MessageFilter Klass
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
abstract basklass för olika klasser av filter som används för att fråga efter meddelanden.
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
- Arv
-
MessageFilter
- Härledda
- Attribut
Kommentarer
MessageFilter är en abstract klass som utvecklare implementerar för att ange de kriterier som ska användas för att inspektera meddelanden. Vanligtvis används filter av ett slutpunktsprogram för att avgöra vad du ska göra med ett meddelande baserat på en undersökning av någon del av meddelandet. En köprocess kan till exempel använda en XPath 1.0-fråga för att kontrollera prioritetselementet i ett känt huvud för att avgöra om ett meddelande ska flyttas till köns framsida.
Filter lagras i en filtertabell som implementerar IMessageFilterTable<TFilterData>. Varje filter i tabellen är associerat med angivna filterdata som kan användas för att ange vilka åtgärder som ska vidtas om ett meddelande matchar filtret. Metoderna Match används för att avgöra om ett meddelande uppfyller ett filter.
Det går inte att ändra de kriterier som används av ett filter när filtret har konstruerats eftersom filtertabellerna inte kan identifiera en ändring. Det enda sättet att ändra villkor för ett filter är att konstruera ett nytt och ta bort det befintliga filtret.
Följande klasser implementerar abstractMessageFilter klassen:
XPathMessageFilter använder ett XPath 1.0-uttryck för att ange villkor för en matchning.
MatchAllMessageFilter matchar alla meddelanden.
MatchNoneMessageFilter matchar inget av meddelandena.
ActionMessageFilter testar om åtgärden för ett meddelande är en av en angiven uppsättning åtgärder.
EndpointAddressMessageFilter testar om ett meddelande uppfyller en angiven slutpunktsadress.
ChannelListenerBase<TChannel> är en abstract basklass som du kan använda för att skriva lyssnare som inte är köande.
Konstruktorer
| Name | Description |
|---|---|
| MessageFilter() |
När den anropas i en härledd klass initieras en ny instans av MessageFilter klassen. |
Metoder
| Name | Description |
|---|---|
| CreateFilterTable<FilterData>() |
Skapar en filtertabell för ett filter som har en angiven typ av data som är associerad med den. |
| Equals(Object) |
Avgör om det angivna objektet är lika med det aktuella objektet. (Ärvd från Object) |
| GetHashCode() |
Fungerar som standard-hash-funktion. (Ärvd från Object) |
| GetType() |
Hämtar den aktuella instansen Type . (Ärvd från Object) |
| Match(Message) |
När det åsidosättas i en härledd klass testar om ett meddelande uppfyller filtervillkoren. Kroppen kan inte undersökas. |
| Match(MessageBuffer) |
När det åsidosättas i en härledd klass testar om ett buffrat meddelande uppfyller kriterierna för ett filter. |
| MemberwiseClone() |
Skapar en ytlig kopia av den aktuella Object. (Ärvd från Object) |
| ToString() |
Returnerar en sträng som representerar det aktuella objektet. (Ärvd från Object) |