MessageFilter Sınıf

Tanım

abstract iletileri sorgulamak için kullanılan farklı filtre sınıfları için temel sınıf.

public ref class MessageFilter abstract
[System.Runtime.Serialization.DataContract]
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))]
public abstract class MessageFilter
[<System.Runtime.Serialization.DataContract>]
type MessageFilter = class
[<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
Devralma
MessageFilter
Türetilmiş
Öznitelikler

Açıklamalar

MessageFilter , geliştiricilerin iletileri incelemek için kullanılacak ölçütleri belirtmek için uyguladığı bir abstract sınıftır. Filtreler genellikle bir uç nokta uygulaması tarafından iletinin bir bölümünün incelenmesine bağlı olarak iletiyle ne yapacağını belirlemek için kullanılır. Örneğin bir kuyruğa alma işlemi, bir iletiyi kuyruğun önüne taşıyıp taşımayacağını belirlemek üzere bilinen üst bilginin öncelik öğesini denetlemek için XPath 1.0 sorgusu kullanabilir.

Filtreler, uygulayan IMessageFilterTable<TFilterData>bir filtre tablosunda depolanır. Tablodaki her filtre, bir iletinin filtreyle eşleşmesi durumunda gerçekleştirilecek eylemleri göstermek için kullanılabilecek belirtilen filtre verileriyle ilişkilendirilir. Yöntemler, bir iletinin Match bir filtreye uygun olup olmadığını belirlemek için kullanılır.

Filtre tablolarının bir değişikliği algılama yolu olmadığından, filtre tarafından kullanılan ölçütler filtre oluşturulduğunda değiştirilemez. Filtrenin ölçütlerini değiştirmenin tek yolu, yeni bir filtre oluşturmak ve var olan filtreyi silmektir.

Aşağıdaki sınıflar sınıfını abstractMessageFilter uygular:

ChannelListenerBase<TChannel> , kuyruğa almamış dinleyiciler yazmak için kullanabileceğiniz bir abstract temel sınıftır.

Oluşturucular

MessageFilter()

Türetilmiş bir sınıfta çağrıldığında sınıfının yeni bir örneğini MessageFilter başlatır.

Yöntemler

CreateFilterTable<FilterData>()

Kendisiyle ilişkilendirilmiş belirtilen veri türüne sahip bir filtre için filtre tablosu oluşturur.

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
Match(Message)

Türetilmiş bir sınıfta geçersiz kılındığında, iletinin filtre ölçütlerini karşılayıp karşılamadığını test eder. Vücut incelenemez.

Match(MessageBuffer)

Türetilmiş bir sınıfta geçersiz kılındığında, arabelleğe alınan bir iletinin filtre ölçütlerini karşılayıp karşılamadığını test eder.

MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.

(Devralındığı yer: Object)

Şunlara uygulanır