MessageFilter Classe
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.
abstract
classe base per classi diverse di filtri usati per eseguire query sui messaggi.
public ref class MessageFilter abstract
[System.Runtime.Serialization.DataContract]
[System.Runtime.Serialization.KnownType(typeof(System.ServiceModel.Dispatcher.ActionMessageFilter))]
[System.Runtime.Serialization.KnownType(typeof(System.ServiceModel.Dispatcher.XPathMessageFilter))]
[System.Runtime.Serialization.KnownType(typeof(System.ServiceModel.Dispatcher.MatchAllMessageFilter))]
[System.Runtime.Serialization.KnownType(typeof(System.ServiceModel.Dispatcher.MatchNoneMessageFilter))]
public abstract class MessageFilter
[<System.Runtime.Serialization.DataContract>]
[<System.Runtime.Serialization.KnownType(typeof(System.ServiceModel.Dispatcher.ActionMessageFilter))>]
[<System.Runtime.Serialization.KnownType(typeof(System.ServiceModel.Dispatcher.XPathMessageFilter))>]
[<System.Runtime.Serialization.KnownType(typeof(System.ServiceModel.Dispatcher.MatchAllMessageFilter))>]
[<System.Runtime.Serialization.KnownType(typeof(System.ServiceModel.Dispatcher.MatchNoneMessageFilter))>]
type MessageFilter = class
Public MustInherit Class MessageFilter
- Ereditarietà
-
MessageFilter
- Derivato
- Attributi
Commenti
MessageFilter è una classe abstract
implementata dagli sviluppatori per specificare i criteri da usare per l'ispezione dei messaggi. In genere, i filtri vengono usati da un'applicazione endpoint per determinare cosa fare con un messaggio in base a un esame di parte del messaggio. Un processo di accodamento, ad esempio, può usare una query XPath 1.0 per controllare l'elemento priority di un'intestazione nota per determinare se spostare un messaggio all'inizio della coda.
I filtri vengono archiviati in una tabella di filtri che implementa IMessageFilterTable<TFilterData>. Ogni filtro nella tabella è associato ai dati di filtro specificati che possono essere utilizzati per indicare quali azioni eseguire se un messaggio corrisponde al filtro. I metodi Match vengono utilizzati per determinare se un messaggio soddisfa un filtro.
I criteri utilizzati da un filtro non possono essere modificati dopo la costruzione del filtro perché le tabelle di filtro non possono rilevare una modifica. L'unico modo per modificare i criteri di un filtro consiste nel crearne uno nuovo ed eliminare il filtro esistente.
Le classi seguenti implementano la classe abstract
MessageFilter:
XPathMessageFilter usa un'espressione XPath 1.0 per specificare i criteri per una corrispondenza.
MatchAllMessageFilter corrisponde a tutti i messaggi.
MatchNoneMessageFilter corrisponde a nessuno dei messaggi.
ActionMessageFilter verifica se l'azione di un messaggio è uno di un set specificato di azioni.
EndpointAddressMessageFilter verifica se un messaggio soddisfa un indirizzo endpoint specificato.
ChannelListenerBase<TChannel> è una classe di base abstract
che è possibile usare per la scrittura di listener non di accodamento.
Costruttori
MessageFilter() |
Quando viene chiamato in una classe derivata, inizializza una nuova istanza della classe MessageFilter. |
Metodi
CreateFilterTable<FilterData>() |
Crea una tabella di filtro per un filtro con un tipo di dati specificato associato. |
Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
GetType() |
Ottiene il Type dell'istanza corrente. (Ereditato da Object) |
Match(Message) |
In caso di override in una classe derivata, verifica se un messaggio soddisfa i criteri di filtro. Il corpo non può essere esaminato. |
Match(MessageBuffer) |
In caso di override in una classe derivata, verifica se un messaggio memorizzato nel buffer soddisfa i criteri di un filtro. |
MemberwiseClone() |
Crea una copia superficiale del Objectcorrente. (Ereditato da Object) |
ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |