共用方式為


MessageFilter 類別

定義

abstract 用於查詢訊息之不同篩選類別的基類。

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
繼承
MessageFilter
衍生
屬性

備註

MessageFilter 是開發人員實作的 abstract 類別,以指定要用於檢查訊息的準則。 一般而言,端點應用程式會使用篩選條件,根據訊息的某些部分的檢查來判斷訊息的用途。 例如,佇列進程可以使用 XPath 1.0 查詢來檢查已知標頭的優先順序元素,以判斷是否要將訊息移至佇列前端。

篩選會儲存在實作 IMessageFilterTable<TFilterData>的篩選數據表中。 數據表中的每個篩選都與指定的篩選數據相關聯,可用來指出訊息符合篩選條件時要採取的動作。 Match 方法可用來判斷訊息是否符合篩選條件。

一旦建構篩選條件,篩選條件所使用的準則就無法變更,因為篩選數據表無法偵測變更。 修改篩選準則的唯一方法是建構新的篩選,並刪除現有的篩選。

下列類別會實作 abstractMessageFilter 類別:

ChannelListenerBase<TChannel>abstract 基類,可用來撰寫非佇列接聽程式。

建構函式

MessageFilter()

在衍生類別中呼叫時,初始化 MessageFilter 類別的新實例。

方法

CreateFilterTable<FilterData>()

為具有與其相關聯之數據類型的篩選建立篩選數據表。

Equals(Object)

判斷指定的物件是否等於目前的物件。

(繼承來源 Object)
GetHashCode()

做為預設哈希函式。

(繼承來源 Object)
GetType()

取得目前實例的 Type

(繼承來源 Object)
Match(Message)

在衍生類別中覆寫時,測試訊息是否符合篩選準則。 無法檢查本文。

Match(MessageBuffer)

在衍生類別中覆寫時,測試緩衝訊息是否符合篩選條件的準則。

MemberwiseClone()

建立目前 Object的淺層複本。

(繼承來源 Object)
ToString()

傳回表示目前 物件的字串。

(繼承來源 Object)

適用於