IMessageFilterTable<TFilterData>.GetMatchingFilter Metodo

Definizione

Restituisce un filtro dalla tabella i cui criteri di query vengono soddisfatti da un messaggio specificato o da un messaggio memorizzato nel buffer.

Overload

Nome Descrizione
GetMatchingFilter(Message, MessageFilter)

Restituisce un valore che indica se il criterio di corrispondenza di esattamente un filtro nella tabella viene soddisfatto dal messaggio specificato e restituisce tale filtro in un out parametro.

GetMatchingFilter(MessageBuffer, MessageFilter)

Restituisce un valore che indica se il criterio di corrispondenza di esattamente un filtro nella tabella viene soddisfatto dal messaggio o dal messaggio memorizzato nel buffer specificato e restituisce tale filtro in un out parametro.

Commenti

Utilizzare questo metodo quando si prevede che un singolo filtro corrisponda al messaggio e il filtro corrispondente è obbligatorio.

Utilizzare GetMatchingFilter se il contenuto del corpo non richiede un esame. Utilizzare GetMatchingFilter se il contenuto del corpo del messaggio può richiedere un esame.

GetMatchingFilter(Message, MessageFilter)

Restituisce un valore che indica se il criterio di corrispondenza di esattamente un filtro nella tabella viene soddisfatto dal messaggio specificato e restituisce tale filtro in un out parametro.

public:
 bool GetMatchingFilter(System::ServiceModel::Channels::Message ^ message, [Runtime::InteropServices::Out] System::ServiceModel::Dispatcher::MessageFilter ^ % filter);
public bool GetMatchingFilter(System.ServiceModel.Channels.Message message, out System.ServiceModel.Dispatcher.MessageFilter filter);
abstract member GetMatchingFilter : System.ServiceModel.Channels.Message * MessageFilter -> bool
Public Function GetMatchingFilter (message As Message, ByRef filter As MessageFilter) As Boolean

Parametri

message
Message

Oggetto Message da testare.

filter
MessageFilter

out parametro che archivia il filtro soddisfatto dall'oggetto message. Se non è stato trovato alcun filtro, il parametro viene impostato sul valore predefinito.

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.

Commenti

Utilizzare questo metodo quando si prevede che un singolo filtro corrisponda al messaggio e il filtro corrispondente è obbligatorio.

Se il corpo del messaggio deve essere controllato da un filtro nella tabella dei filtri, utilizzare la GetMatchingFilter versione del metodo .

Note per gli implementatori

Se più filtri corrispondono al messaggio, deve essere generata un'eccezione MultipleFilterMatchesException .

Questa versione accetta e Message deve generare un'eccezione InvalidBodyAccessException se tenta di esaminare il corpo del messaggio.

Si applica a

GetMatchingFilter(MessageBuffer, MessageFilter)

Restituisce un valore che indica se il criterio di corrispondenza di esattamente un filtro nella tabella viene soddisfatto dal messaggio o dal messaggio memorizzato nel buffer specificato e restituisce tale filtro in un out parametro.

public:
 bool GetMatchingFilter(System::ServiceModel::Channels::MessageBuffer ^ messageBuffer, [Runtime::InteropServices::Out] System::ServiceModel::Dispatcher::MessageFilter ^ % filter);
public bool GetMatchingFilter(System.ServiceModel.Channels.MessageBuffer messageBuffer, out System.ServiceModel.Dispatcher.MessageFilter filter);
abstract member GetMatchingFilter : System.ServiceModel.Channels.MessageBuffer * MessageFilter -> bool
Public Function GetMatchingFilter (messageBuffer As MessageBuffer, ByRef filter As MessageFilter) As Boolean

Parametri

messageBuffer
MessageBuffer

Oggetto MessageBuffer da testare.

filter
MessageFilter

out parametro che archivia il filtro soddisfatto dall'oggetto message. Se non è stato trovato alcun filtro, il parametro viene impostato sul valore predefinito.

Valori restituiti

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

Commenti

Utilizzare questo metodo quando si prevede che un singolo filtro corrisponda al messaggio memorizzato nel buffer, è necessario che venga restituito il filtro corrispondente e che il corpo del messaggio debba essere controllato.

Si applica a