MessageFilterTable<TFilterData>.GetMatchingFilters Metodo

Definizione

Restituisce un valore che indica se il criterio di corrispondenza di un MessageFilter oggetto nella tabella viene soddisfatto dal messaggio o dal messaggio memorizzato nel buffer specificato e aggiunge i filtri corrispondenti a una raccolta.

Overload

Nome Descrizione
GetMatchingFilters(Message, ICollection<MessageFilter>)

Restituisce un valore che indica se il criterio di corrispondenza di un MessageFilter oggetto nella tabella viene soddisfatto dal messaggio specificato e aggiunge i filtri corrispondenti a una raccolta.

GetMatchingFilters(MessageBuffer, ICollection<MessageFilter>)

Restituisce un valore che indica se il criterio di corrispondenza di almeno un filtro nella tabella viene soddisfatto dal messaggio memorizzato nel buffer specificato e aggiunge i filtri corrispondenti dal set di filtri con priorità più alta in cui viene trovata almeno una corrispondenza a una raccolta.

Commenti

Utilizzare questo metodo quando si prevede che più filtri corrispondano al messaggio e sono necessari i filtri corrispondenti.

GetMatchingFilters(Message, ICollection<MessageFilter>)

Restituisce un valore che indica se il criterio di corrispondenza di un MessageFilter oggetto nella tabella viene soddisfatto dal messaggio specificato e aggiunge i filtri corrispondenti a una raccolta.

public:
 virtual bool GetMatchingFilters(System::ServiceModel::Channels::Message ^ message, System::Collections::Generic::ICollection<System::ServiceModel::Dispatcher::MessageFilter ^> ^ results);
public bool GetMatchingFilters(System.ServiceModel.Channels.Message message, System.Collections.Generic.ICollection<System.ServiceModel.Dispatcher.MessageFilter> results);
abstract member GetMatchingFilters : System.ServiceModel.Channels.Message * System.Collections.Generic.ICollection<System.ServiceModel.Dispatcher.MessageFilter> -> bool
override this.GetMatchingFilters : System.ServiceModel.Channels.Message * System.Collections.Generic.ICollection<System.ServiceModel.Dispatcher.MessageFilter> -> bool
Public Function GetMatchingFilters (message As Message, results As ICollection(Of MessageFilter)) As Boolean

Parametri

message
Message

Oggetto Message da testare.

results
ICollection<MessageFilter>

Parametro di riferimento che archivia gli MessageFilter oggetti corrispondenti in ICollection<T><Filter>.

Valori restituiti

true se il criterio di corrispondenza di almeno uno MessageFilter nella tabella viene soddisfatto da message; false se non viene soddisfatto alcun filtro.

Implementazioni

Eccezioni

results è null.

Un filtro ha tentato di esaminare il contenuto del corpo del messaggio.

Commenti

Utilizzare questo metodo quando si prevede che più filtri corrispondano al messaggio e sono necessari i filtri corrispondenti.

Questo metodo verifica tutti i filtri corrispondenti nel bucket con priorità più alta dei filtri in cui si verifica almeno una corrispondenza.

I filtri nella tabella non sono autorizzati a controllare il corpo del messaggio.

Gli oggetti corrispondenti MessageFilter vengono archiviati nel results parametro di ICollection<T>. Può FilterData quindi essere recuperato dalla tabella dei filtri usando questi filtri come chiavi con i metodi forniti da IDictionary<TKey,TValue>.

Questo metodo implementa GetMatchingFilters.

Si applica a

GetMatchingFilters(MessageBuffer, ICollection<MessageFilter>)

Restituisce un valore che indica se il criterio di corrispondenza di almeno un filtro nella tabella viene soddisfatto dal messaggio memorizzato nel buffer specificato e aggiunge i filtri corrispondenti dal set di filtri con priorità più alta in cui viene trovata almeno una corrispondenza a una raccolta.

public:
 virtual bool GetMatchingFilters(System::ServiceModel::Channels::MessageBuffer ^ buffer, System::Collections::Generic::ICollection<System::ServiceModel::Dispatcher::MessageFilter ^> ^ results);
public bool GetMatchingFilters(System.ServiceModel.Channels.MessageBuffer buffer, System.Collections.Generic.ICollection<System.ServiceModel.Dispatcher.MessageFilter> results);
abstract member GetMatchingFilters : System.ServiceModel.Channels.MessageBuffer * System.Collections.Generic.ICollection<System.ServiceModel.Dispatcher.MessageFilter> -> bool
override this.GetMatchingFilters : System.ServiceModel.Channels.MessageBuffer * System.Collections.Generic.ICollection<System.ServiceModel.Dispatcher.MessageFilter> -> bool
Public Function GetMatchingFilters (buffer As MessageBuffer, results As ICollection(Of MessageFilter)) As Boolean

Parametri

buffer
MessageBuffer

Oggetto MessageBuffer da testare.

results
ICollection<MessageFilter>

Parametro di riferimento che archivia gli MessageFilter oggetti corrispondenti in ICollection<T><Filter>.

Valori restituiti

true se il criterio di corrispondenza di almeno un filtro nella tabella viene soddisfatto da message; false se non viene soddisfatto alcun filtro.

Implementazioni

Eccezioni

results è null.

Commenti

Utilizzare questo metodo quando si prevede che più filtri corrispondano al messaggio memorizzato nel buffer e sono necessari i filtri corrispondenti.

I filtri nella tabella possono esaminare il corpo del messaggio.

Gli oggetti corrispondenti MessageFilter vengono archiviati nel results parametro di ICollection<T>. Può FilterData quindi essere recuperato dalla tabella dei filtri usando questi filtri come chiavi con i metodi forniti da IDictionary<TKey,TValue>.

Questo metodo implementa GetMatchingFilters.

Si applica a