MessageFilter MessageFilter MessageFilter MessageFilter Class

Definizione

Classe abstract di base per classi di filtri diverse utilizzate per eseguire query sui messaggi.abstract base class for different classes of filters used to query messages.

public ref class MessageFilter abstract
[System.Runtime.Serialization.DataContract]
[System.Runtime.Serialization.KnownType(typeof(System.ServiceModel.Dispatcher.MatchNoneMessageFilter))]
[System.Runtime.Serialization.KnownType(typeof(System.ServiceModel.Dispatcher.ActionMessageFilter))]
[System.Runtime.Serialization.KnownType(typeof(System.ServiceModel.Dispatcher.MatchAllMessageFilter))]
[System.Runtime.Serialization.KnownType(typeof(System.ServiceModel.Dispatcher.XPathMessageFilter))]
public abstract class MessageFilter
type MessageFilter = class
Public MustInherit Class MessageFilter
Ereditarietà
MessageFilterMessageFilterMessageFilterMessageFilter
Derivato
Attributi

Commenti

MessageFilter è una classe abstract che gli sviluppatori implementano per specificare i criteri da utilizzare per il controllo di messaggi.MessageFilter is an abstract class that developers implement in order to specify the criteria to use for inspecting messages. 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.Typically, filters are used by an endpoint application to determine what to do with a message based on an examination of some part of the message. 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.A queuing process, for example, can use an XPath 1.0 query to check the priority element of a known header to determine whether to move a message to the front of the queue.

I filtri vengono memorizzati in una tabella dei filtri che implementa IMessageFilterTable<TFilterData>.Filters are stored in a filter table that implements 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.Each filter in the table is associated with specified filter data that can be used to indicate what actions to take if a message matches the filter. I metodi Match vengono utilizzati per determinare se un messaggio soddisfa un filtro.The Match methods are used to determine if a message satisfies a filter.

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.The criteria used by a filter cannot be changed once the filter is constructed because the filter tables have no way to detect a change. L'unico modo di modificare i criteri di un filtro è di costruirne un nuovo e di eliminare il filtro esistente.The only way to modify the criteria of a filter is to construct a new one and delete the existing filter.

Le seguenti classi implementano la classe abstractMessageFilter:The following classes implement the abstractMessageFilter class:

ChannelListenerBase<TChannel> è una classe di base abstract da utilizzare per scrivere listener senza accodamento.ChannelListenerBase<TChannel> is an abstract base class that you can use for writing non-queuing listeners.

Costruttori

MessageFilter() MessageFilter() MessageFilter() MessageFilter()

Quando viene chiamato in una classe derivata, inizializza una nuova istanza della classe MessageFilter.When called in a derived class, initializes a new instance of the MessageFilter class.

Metodi

CreateFilterTable<FilterData>() CreateFilterTable<FilterData>() CreateFilterTable<FilterData>() CreateFilterTable<FilterData>()

Crea una tabella dei filtri per un filtro a cui è associato un tipo di dati specificato.Creates a filter table for a filter that has a specified type of data associated with it.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Funge da funzione hash predefinita.Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

Ottiene l'oggetto Type dell'istanza corrente.Gets the Type of the current instance.

(Inherited from Object)
Match(Message) Match(Message) Match(Message) Match(Message)

Quando sottoposto a override in una classe derivata, controlla se un messaggio soddisfa i criteri di un filtro dell'endpoint.When overridden in a derived class, tests whether a message satisfies the filter criteria. Non è possibile esaminare il corpo.The body cannot be examined.

Match(MessageBuffer) Match(MessageBuffer) Match(MessageBuffer) 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.When overridden in a derived class, tests whether a buffered message satisfies the criteria of a filter.

MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.Returns a string that represents the current object.

(Inherited from Object)

Si applica a