Partager via


MessageFilter Classe

Définition

abstract classe de base pour différentes classes de filtres utilisées pour interroger des messages.

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
Héritage
MessageFilter
Dérivé
Attributs

Remarques

MessageFilter est une classe abstract que les développeurs implémentent pour spécifier les critères à utiliser pour inspecter les messages. En règle générale, les filtres sont utilisés par une application de point de terminaison pour déterminer ce qu’il faut faire avec un message en fonction d’un examen d’une partie du message. Un processus de mise en file d’attente, par exemple, peut utiliser une requête XPath 1.0 pour vérifier l’élément de priorité d’un en-tête connu pour déterminer s’il faut déplacer un message vers l’avant de la file d’attente.

Les filtres sont stockés dans une table de filtres qui implémente IMessageFilterTable<TFilterData>. Chaque filtre de la table est associé aux données de filtre spécifiées qui peuvent être utilisées pour indiquer quelles actions effectuer si un message correspond au filtre. Les méthodes Match sont utilisées pour déterminer si un message satisfait à un filtre.

Les critères utilisés par un filtre ne peuvent pas être modifiés une fois le filtre construit, car les tables de filtre n’ont aucun moyen de détecter une modification. La seule façon de modifier les critères d’un filtre consiste à construire un nouveau filtre et à supprimer le filtre existant.

Les classes suivantes implémentent la classe abstractMessageFilter :

ChannelListenerBase<TChannel> est une classe de base abstract que vous pouvez utiliser pour écrire des écouteurs non en file d’attente.

Constructeurs

MessageFilter()

Lorsqu’elle est appelée dans une classe dérivée, initialise une nouvelle instance de la classe MessageFilter.

Méthodes

CreateFilterTable<FilterData>()

Crée une table de filtres pour un filtre qui a un type spécifié de données associées.

Equals(Object)

Détermine si l’objet spécifié est égal à l’objet actuel.

(Hérité de Object)
GetHashCode()

Sert de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient la Type de l’instance actuelle.

(Hérité de Object)
Match(Message)

En cas de substitution dans une classe dérivée, teste si un message répond aux critères de filtre. Le corps ne peut pas être examiné.

Match(MessageBuffer)

En cas de substitution dans une classe dérivée, teste si un message mis en mémoire tampon répond aux critères d’un filtre.

MemberwiseClone()

Crée une copie superficielle du Objectactuel.

(Hérité de Object)
ToString()

Retourne une chaîne qui représente l’objet actuel.

(Hérité de Object)

S’applique à