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.
Classe abstract
di base per classi di filtri diverse utilizzate 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
che gli sviluppatori implementano per specificare i criteri da utilizzare per il controllo di messaggi. In genere, i filtri vengono utilizzati da un'applicazione dell'endpoint per determinare come comportarsi con un messaggio basato sull'attività di esame di una parte del messaggio. Un processo di accodamento, ad esempio, può utilizzare una query XPath 1.0 per controllare l'elemento prioritario di un'intestazione nota e determinare se spostare un messaggio all'inizio della coda.
I filtri vengono memorizzati in una tabella dei filtri che implementa IMessageFilterTable<TFilterData>. Ogni filtro nella tabella è associato a dati filtro specificati che possono essere utilizzati per indicare quali azioni intraprendere se un messaggio corrisponde al filtro. I metodi Match vengono utilizzati per determinare se un messaggio soddisfa un filtro.
Non è possibile modificare i criteri utilizzati da un filtro una volta costruito il filtro perché le tabelle dei filtri non sono in grado di rilevare modifiche. L'unico modo di modificare i criteri di un filtro è di costruirne un nuovo e di eliminare il filtro esistente.
Le classi seguenti implementano la abstract
MessageFilter classe:
XPathMessageFilter utilizza un'espressione Xpath 1.0 per specificare i criteri per la corrispondenza.
MatchAllMessageFilter corrisponde a tutti i messaggi.
MatchNoneMessageFilter non corrisponde ad alcun messaggio.
ActionMessageFilter controlla se l'azione di un messaggio fa parte di un set specificato di azioni.
EndpointAddressMessageFilter controlla se un messaggio soddisfa un indirizzo dell'endpoint specificato.
ChannelListenerBase<TChannel> è una classe di base abstract
da utilizzare per scrivere listener senza accodamento.
Costruttori
MessageFilter() |
Quando viene chiamato in una classe derivata, inizializza una nuova istanza della classe MessageFilter. |
Metodi
CreateFilterTable<FilterData>() |
Crea una tabella dei filtri per un filtro a cui è associato un tipo di dati specificato. |
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 l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
Match(Message) |
Quando sottoposto a override in una classe derivata, controlla se un messaggio soddisfa i criteri di un filtro dell'endpoint. Non è possibile esaminare il corpo. |
Match(MessageBuffer) |
Quando sottoposto a override in una classe derivata, controlla se un messaggio memorizzato nel buffer soddisfa i criteri di un filtro dell'endpoint. |
MemberwiseClone() |
Crea una copia superficiale dell'oggetto Object corrente. (Ereditato da Object) |
ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |