MessageFilter Klas
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
abstract basisklasse voor verschillende klassen filters die worden gebruikt voor het opvragen van berichten.
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
- Overname
-
MessageFilter
- Afgeleid
- Kenmerken
Opmerkingen
MessageFilter is een abstract klasse die ontwikkelaars implementeren om de criteria op te geven die moeten worden gebruikt voor het inspecteren van berichten. Filters worden doorgaans gebruikt door een eindpunttoepassing om te bepalen wat er met een bericht moet worden uitgevoerd op basis van een onderzoek van een deel van het bericht. Een wachtrijproces kan bijvoorbeeld een XPath 1.0-query gebruiken om het prioriteitselement van een bekende header te controleren om te bepalen of een bericht naar de voorzijde van de wachtrij moet worden verplaatst.
Filters worden opgeslagen in een filtertabel die wordt geïmplementeerd IMessageFilterTable<TFilterData>. Elk filter in de tabel is gekoppeld aan opgegeven filtergegevens die kunnen worden gebruikt om aan te geven welke acties moeten worden ondernomen als een bericht overeenkomt met het filter. De Match methoden worden gebruikt om te bepalen of een bericht voldoet aan een filter.
De criteria die door een filter worden gebruikt, kunnen niet worden gewijzigd zodra het filter is samengesteld omdat de filtertabellen geen manier hebben om een wijziging te detecteren. De enige manier om de criteria van een filter te wijzigen, is door een nieuw filter te maken en het bestaande filter te verwijderen.
De volgende klassen implementeren de abstractMessageFilter klasse:
XPathMessageFilter gebruikt een XPath 1.0-expressie om de criteria voor een overeenkomst op te geven.
MatchAllMessageFilter komt overeen met alle berichten.
MatchNoneMessageFilter komt overeen met geen van de berichten.
ActionMessageFilter test of de actie van een bericht een van een opgegeven set acties is.
EndpointAddressMessageFilter test of een bericht voldoet aan een opgegeven eindpuntadres.
ChannelListenerBase<TChannel> is een abstract basisklasse die u kunt gebruiken voor het schrijven van niet-wachtrijlisteners.
Constructors
| Name | Description |
|---|---|
| MessageFilter() |
Wanneer een afgeleide klasse wordt aangeroepen, initialiseert u een nieuw exemplaar van de MessageFilter klasse. |
Methoden
| Name | Description |
|---|---|
| CreateFilterTable<FilterData>() |
Hiermee maakt u een filtertabel voor een filter waaraan een opgegeven type gegevens is gekoppeld. |
| Equals(Object) |
Bepaalt of het opgegeven object gelijk is aan het huidige object. (Overgenomen van Object) |
| GetHashCode() |
Fungeert als de standaardhashfunctie. (Overgenomen van Object) |
| GetType() |
Hiermee haalt u de Type huidige instantie op. (Overgenomen van Object) |
| Match(Message) |
Wanneer een bericht wordt overschreven in een afgeleide klasse, wordt getest of een bericht voldoet aan de filtercriteria. Het lichaam kan niet worden onderzocht. |
| Match(MessageBuffer) |
Wanneer een bericht wordt overschreven in een afgeleide klasse, wordt getest of een gebufferd bericht voldoet aan de criteria van een filter. |
| MemberwiseClone() |
Hiermee maakt u een ondiepe kopie van de huidige Object. (Overgenomen van Object) |
| ToString() |
Retourneert een tekenreeks die het huidige object vertegenwoordigt. (Overgenomen van Object) |