MessageFilter Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
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]
[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
- Devralma
-
MessageFilter
- Türetilmiş
- Öznitelikler
Açıklamalar
MessageFilter, geliştiricilerin iletileri incelemek için kullanılacak ölçütleri belirtmek üzere uyguladığı bir abstract
sınıfıdı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, IMessageFilterTable<TFilterData>uygulayan bir filtre tablosunda depolanır. Tablodaki her filtre, bir ileti filtreyle eşleşirse gerçekleştirilecek eylemleri belirtmek için kullanılabilecek belirtilen filtre verileriyle ilişkilendirilir. Match yöntemleri, bir iletinin filtreyi karşılar mı belirlemek için kullanılır.
Filtre tablolarının bir değişikliği algılama yolu olmadığından, filtre oluşturulduğunda filtre tarafından kullanılan ölçütler 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 abstract
MessageFilter sınıfını uygular:
XPathMessageFilter, eşleşme ölçütlerini belirtmek için bir XPath 1.0 ifadesi kullanır.
MatchAllMessageFilter tüm iletilerle eşleşir.
MatchNoneMessageFilter hiçbir iletiyle eşleşmiyor.
ActionMessageFilter, bir iletinin eyleminin belirtilen eylem kümesinden biri olup olmadığını test eder.
EndpointAddressMessageFilter, bir iletinin belirtilen uç nokta adresini karşılayıp karşılamadığını test eder.
ChannelListenerBase<TChannel>, kuyruğa almamış dinleyiciler yazmak için kullanabileceğiniz abstract
temel sınıfıdır.
Oluşturucular
MessageFilter() |
Türetilmiş bir sınıfta çağrıldığında, MessageFilter sınıfının yeni bir örneğini başlatır. |
Yöntemler
CreateFilterTable<FilterData>() |
Kendisiyle ilişkilendirilmiş belirli bir 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() |
Geçerli örneğin Type 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 iletinin filtre ölçütlerini karşılayıp karşılamadığını test eder. |
MemberwiseClone() |
Geçerli Objectbasit bir kopyasını oluşturur. (Devralındığı yer: Object) |
ToString() |
Geçerli nesneyi temsil eden bir dize döndürür. (Devralındığı yer: Object) |