IMessageFilterTable<TFilterData>.GetMatchingFilters Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Aggiunge i filtri i cui criteri della query sono soddisfatti da un messaggio specificato o da un messaggio memorizzato nel buffer a una raccolta.
Overload
GetMatchingFilters(Message, ICollection<MessageFilter>) |
Restituisce un valore che indica se il criterio di corrispondenza di un filtro della tabella viene soddisfatto dal messaggio specificato e aggiunge i filtri corrispondenti alla raccolta. |
GetMatchingFilters(MessageBuffer, ICollection<MessageFilter>) |
Restituisce un valore che indica se il criterio di corrispondenza di un filtro della tabella viene soddisfatto dal messaggio memorizzato nel buffer e aggiunge i filtri corrispondenti alla raccolta. |
Commenti
Utilizzare uno di questi metodi quando si prevede che più filtri corrispondano al messaggio e occorre disporre dei filtri corrispondenti. Si noti che la raccolta che contiene i filtri non viene cancellata prima che vengano aggiunti i risultati. Consente di accumulare tutte le corrispondenze presenti in più tabelle dei filtri in una sola raccolta.
Se il corpo del messaggio deve essere controllato da un filtro della tabella dei filtri, memorizzare il messaggio nel buffer e passarlo al metodo GetMatchingFilters. In caso contrario, usare GetMatchingFilters.
Gli oggetti MessageFilter corrispondenti vengono memorizzati nel parametro results
. I dati filtro possono quindi essere recuperati dalla tabella dei filtri utilizzando questi filtri come chiavi, tramite i metodi forniti da IDictionary<TKey,TValue>.
GetMatchingFilters(Message, ICollection<MessageFilter>)
Restituisce un valore che indica se il criterio di corrispondenza di un filtro della tabella viene soddisfatto dal messaggio specificato e aggiunge i filtri corrispondenti alla raccolta.
public:
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
Public Function GetMatchingFilters (message As Message, results As ICollection(Of MessageFilter)) As Boolean
Parametri
- results
- ICollection<MessageFilter>
Parametro per riferimento che memorizza gli oggetti MessageFilter che corrispondono in ICollection<T><Filter>.
Restituisce
true
se il criterio di corrispondenza di almeno un filtro nella tabella è soddisfatto da message
; false
se nessun filtro è soddisfatto.
Commenti
Utilizzare questo metodo quando si prevede che più di un filtro corrisponda al messaggio, è necessario disporre dei filtri corrispondenti e non è necessario controllare il corpo del messaggio.
Note per gli implementatori
Questa versione accetta un oggetto Message e deve generare un'eccezione InvalidBodyAccessException se tenta di esaminare il corpo del messaggio.
Si applica a
GetMatchingFilters(MessageBuffer, ICollection<MessageFilter>)
Restituisce un valore che indica se il criterio di corrispondenza di un filtro della tabella viene soddisfatto dal messaggio memorizzato nel buffer e aggiunge i filtri corrispondenti alla raccolta.
public:
bool GetMatchingFilters(System::ServiceModel::Channels::MessageBuffer ^ messageBuffer, 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);
public bool GetMatchingFilters (System.ServiceModel.Channels.MessageBuffer messageBuffer, 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
abstract member GetMatchingFilters : System.ServiceModel.Channels.MessageBuffer * System.Collections.Generic.ICollection<System.ServiceModel.Dispatcher.MessageFilter> -> bool
Public Function GetMatchingFilters (messageBuffer As MessageBuffer, results As ICollection(Of MessageFilter)) As Boolean
Public Function GetMatchingFilters (buffer As MessageBuffer, results As ICollection(Of MessageFilter)) As Boolean
Parametri
- messageBufferbuffer
- MessageBuffer
Oggetto MessageBuffer da verificare.
- results
- ICollection<MessageFilter>
Parametro per riferimento che memorizza gli oggetti MessageFilter che corrispondono in ICollection<T><Filter>.
Restituisce
true
se il criterio di corrispondenza di almeno un filtro nella tabella è soddisfatto da messageBuffer
; false
se nessun filtro è soddisfatto.
Commenti
Utilizzare questo metodo quando si prevede che più di un filtro corrisponda al messaggio memorizzato nel buffer, è necessario disporre del filtro corrispondente ed è necessario controllare il corpo del messaggio.