MessageFilter Třída

Definice

abstract základní třída pro různé třídy filtrů používaných k dotazování zpráv.

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
Dědičnost
MessageFilter
Odvozené
Atributy

Poznámky

MessageFilterabstract je třída, kterou vývojáři implementují, aby určili kritéria, která se mají použít ke kontrole zpráv. Filtry obvykle používají aplikace koncového bodu k určení toho, co dělat se zprávou na základě zkoumání určité části zprávy. Proces řízení front, například může použít dotaz XPath 1.0 ke kontrole prvku priority známé hlavičky a určit, jestli se má zpráva přesunout na frontu fronty.

Filtry jsou uloženy v tabulce filtru, která implementuje IMessageFilterTable<TFilterData>. Každý filtr v tabulce je přidružený k zadaným datům filtru, která lze použít k označení akcí, které se mají provést, pokud zpráva odpovídá filtru. Metody Match slouží k určení, jestli zpráva splňuje filtr.

Kritéria používaná filtrem nelze po vytvoření filtru změnit, protože tabulky filtrů nemají způsob, jak rozpoznat změnu. Jediným způsobem, jak upravit kritéria filtru, je vytvořit nový a odstranit existující filtr.

Následující třídy implementují abstract MessageFilter třídu:

ChannelListenerBase<TChannel>abstract je základní třída, kterou můžete použít pro psaní naslouchacích procesů, které nejsou ve frontě.

Konstruktory

MessageFilter()

Při vyvolání v odvozené třídě inicializuje novou instanci MessageFilter třídy.

Metody

CreateFilterTable<FilterData>()

Vytvoří tabulku filtru pro filtr, který má přidružený zadaný typ dat.

Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
GetHashCode()

Slouží jako výchozí funkce hash.

(Zděděno od Object)
GetType()

Type Získá aktuální instanci.

(Zděděno od Object)
Match(Message)

Při přepsání v odvozené třídě testuje, zda zpráva splňuje kritéria filtru. Tělo nelze prozkoumat.

Match(MessageBuffer)

Při přepsání v odvozené třídě testuje, zda zpráva ve vyrovnávací paměti splňuje kritéria filtru.

MemberwiseClone()

Vytvoří použádnou kopii aktuálního souboru Object.

(Zděděno od Object)
ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Platí pro