IMessageFilterTable<TFilterData>.GetMatchingFilters Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Fügt einer Auflistung die Filter hinzu, deren Abfragekriterien durch eine angegebene Nachricht oder gepufferte Nachricht erfüllt werden.
Überlädt
GetMatchingFilters(Message, ICollection<MessageFilter>) |
Gibt einen Wert zurück, der angibt, ob das Übereinstimmungskriterium eines Filters in der Tabelle durch die angegebene Nachricht erfüllt wird und die übereinstimmenden Filter einer Auflistung hinzufügt. |
GetMatchingFilters(MessageBuffer, ICollection<MessageFilter>) |
Gibt einen Wert zurück, der angibt, ob das Übereinstimmungskriterium eines Filters in der Tabelle durch die angegebene gepufferte Nachricht erfüllt wird und die übereinstimmenden Filter einer Auflistung hinzufügt. |
Hinweise
Verwenden Sie eine dieser Methoden, wenn davon ausgegangen wird, dass mehrere Filter mit der Nachricht übereinstimmen und übereinstimmende Filter erforderlich sind. Beachten Sie, dass die Auflistung, die die Filter enthält, erst gelöscht wird, wenn die Ergebnisse hinzugefügt wurden. Dies ermöglicht es Ihnen, alle Übereinstimmungen aus mehreren Filtertabellen in einer einzelnen Auflistung zu sammeln.
Wenn der Text der Nachricht durch einen Filter in der Filtertabelle überprüft werden muss, puffern Sie die Nachricht, und übergeben Sie sie an die GetMatchingFilters-Methode. Verwenden Sie andernfalls GetMatchingFilters.
Die übereinstimmenden MessageFilter-Objekte werden im results
-Parameter gespeichert. Die Filterdaten können anschließend aus der Filtertabelle wiederhergestellt werden, indem diese Filter als Schlüssel für die durch IDictionary<TKey,TValue> bereitgestellten Methoden verwendet werden.
GetMatchingFilters(Message, ICollection<MessageFilter>)
Gibt einen Wert zurück, der angibt, ob das Übereinstimmungskriterium eines Filters in der Tabelle durch die angegebene Nachricht erfüllt wird und die übereinstimmenden Filter einer Auflistung hinzufügt.
public:
bool GetMatchingFilters(System::ServiceModel::Channels::Message ^ message, System::Collections::Generic::ICollection<System::ServiceModel::Dispatcher::MessageFilter ^> ^ results);
public bool GetMatchingFilters (System.ServiceModel.Channels.Message message, System.Collections.Generic.ICollection<System.ServiceModel.Dispatcher.MessageFilter> results);
abstract member GetMatchingFilters : System.ServiceModel.Channels.Message * System.Collections.Generic.ICollection<System.ServiceModel.Dispatcher.MessageFilter> -> bool
Public Function GetMatchingFilters (message As Message, results As ICollection(Of MessageFilter)) As Boolean
Parameter
- results
- ICollection<MessageFilter>
Verweisparameter, der die MessageFilter-Objekte speichert, die Übereinstimmungen mit ICollection<T><Filter> aufweisen.
Gibt zurück
true
, wenn das Übereinstimmungskriterium mindestens eines Filters in der Tabelle durch message
erfüllt wird; false
, wenn kein Filter übereinstimmt.
Hinweise
Verwenden Sie diese Methode, wenn erwartet wird, dass mehrere Filter mit der Nachricht übereinstimmen, die übereinstimmenden Filter erforderlich sind und der Text der Nachricht nicht überprüft werden muss.
Hinweise für Ausführende
Diese Version nimmt Message entgegen und muss InvalidBodyAccessException auslösen, wenn versucht wird, den Nachrichtentext zu überprüfen.
Gilt für
GetMatchingFilters(MessageBuffer, ICollection<MessageFilter>)
Gibt einen Wert zurück, der angibt, ob das Übereinstimmungskriterium eines Filters in der Tabelle durch die angegebene gepufferte Nachricht erfüllt wird und die übereinstimmenden Filter einer Auflistung hinzufügt.
public:
bool GetMatchingFilters(System::ServiceModel::Channels::MessageBuffer ^ messageBuffer, System::Collections::Generic::ICollection<System::ServiceModel::Dispatcher::MessageFilter ^> ^ results);
public:
bool GetMatchingFilters(System::ServiceModel::Channels::MessageBuffer ^ buffer, System::Collections::Generic::ICollection<System::ServiceModel::Dispatcher::MessageFilter ^> ^ results);
public bool GetMatchingFilters (System.ServiceModel.Channels.MessageBuffer messageBuffer, System.Collections.Generic.ICollection<System.ServiceModel.Dispatcher.MessageFilter> results);
public bool GetMatchingFilters (System.ServiceModel.Channels.MessageBuffer buffer, System.Collections.Generic.ICollection<System.ServiceModel.Dispatcher.MessageFilter> results);
abstract member GetMatchingFilters : System.ServiceModel.Channels.MessageBuffer * System.Collections.Generic.ICollection<System.ServiceModel.Dispatcher.MessageFilter> -> bool
abstract member GetMatchingFilters : System.ServiceModel.Channels.MessageBuffer * System.Collections.Generic.ICollection<System.ServiceModel.Dispatcher.MessageFilter> -> bool
Public Function GetMatchingFilters (messageBuffer As MessageBuffer, results As ICollection(Of MessageFilter)) As Boolean
Public Function GetMatchingFilters (buffer As MessageBuffer, results As ICollection(Of MessageFilter)) As Boolean
Parameter
- messageBufferbuffer
- MessageBuffer
Der zu überprüfende MessageBuffer.
- results
- ICollection<MessageFilter>
Verweisparameter, der die MessageFilter-Objekte speichert, die Übereinstimmungen mit ICollection<T><Filter> aufweisen.
Gibt zurück
true
, wenn das Übereinstimmungskriterium mindestens eines Filters in der Tabelle durch messageBuffer
erfüllt wird; false
, wenn kein Filter übereinstimmt.
Hinweise
Verwenden Sie diese Methode, wenn erwartet wird, dass mehrere Filter mit der gepufferten Nachricht übereinstimmen, der übereinstimmende Filter erforderlich ist und der Text der Nachricht möglicherweise überprüft werden muss.