MessageFilter.Match Methode
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.
Wanneer een afgeleide klasse wordt overschreven, wordt getest of een bericht of een gebufferd bericht voldoet aan de criteria van een filter.
Overloads
| Name | Description |
|---|---|
| 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. |
Opmerkingen
Het verschil tussen de twee overbelastingen is dat een parameter wordt gebruikt Message en niet is toegestaan om de hoofdtekst te onderzoeken. De andere neemt een MessageBuffer parameter en kan elk deel van het bericht onderzoeken. Berichtkoppen worden automatisch gebufferd en kunnen worden gecontroleerd door een filter zonder te worden verbruikt. Maar als de hoofdtekst moet worden geïnspecteerd door een filter, moet het hele bericht worden gebufferd omdat een niet-gebufferde berichttekst kan worden gebruikt door een query en de inhoud ervan wordt vernietigd.
Gebruik Match dit als onderzoek van het lichaam niet vereist is. Gebruik Match deze optie als onderzoek van de hoofdtekst van het bericht vereist is.
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.
public:
abstract bool Match(System::ServiceModel::Channels::Message ^ message);
public abstract bool Match(System.ServiceModel.Channels.Message message);
abstract member Match : System.ServiceModel.Channels.Message -> bool
Public MustOverride Function Match (message As Message) As Boolean
Parameters
Retouren
true als het Message object voldoet aan de filtercriteria; anders false.
Opmerkingen
Met deze methode kan de inhoud van de berichttekst niet worden gecontroleerd.
Notities voor uitvoerders
Als het filter probeert de hoofdtekst van een niet-gebufferd bericht te onderzoeken, moet het filter een InvalidBodyAccessException. Het mag niet worden geretourneerd false.
Van toepassing op
Match(MessageBuffer)
Wanneer een bericht wordt overschreven in een afgeleide klasse, wordt getest of een gebufferd bericht voldoet aan de criteria van een filter.
public:
abstract bool Match(System::ServiceModel::Channels::MessageBuffer ^ buffer);
public abstract bool Match(System.ServiceModel.Channels.MessageBuffer buffer);
abstract member Match : System.ServiceModel.Channels.MessageBuffer -> bool
Public MustOverride Function Match (buffer As MessageBuffer) As Boolean
Parameters
- buffer
- MessageBuffer
Het MessageBuffer object dat moet worden getest.
Retouren
true als het MessageBuffer object voldoet aan de filtercriteria; anders false.
Opmerkingen
Het bericht moet volledig worden gebufferd als de hoofdtekst door het filter moet worden geïnspecteerd. De hoofdtekst van de machine MessageBuffer is volledig gebufferd en kan daarom door een filter worden geïnspecteerd. De hoofdtekst van een Message die niet volledig gebufferd is, kan door de filterinspectie worden gebruikt. Het headerelement van een Message wordt automatisch gebufferd en kan daarom worden geïnspecteerd zonder te worden verbruikt.