Udostępnij za pośrednictwem


IMessageFilterTable<TFilterData>.GetMatchingFilters Metoda

Definicja

Dodaje filtry, których kryteria zapytania są spełnione przez określony komunikat lub komunikat buforowany do kolekcji.

Przeciążenia

GetMatchingFilters(Message, ICollection<MessageFilter>)

Zwraca wartość wskazującą, czy kryterium dopasowania filtru w tabeli jest spełnione przez określony komunikat i dodaje pasujące filtry do kolekcji.

GetMatchingFilters(MessageBuffer, ICollection<MessageFilter>)

Zwraca wartość wskazującą, czy kryterium dopasowania filtru w tabeli jest spełnione przez określony komunikat buforowany i dodaje pasujące filtry do kolekcji.

Uwagi

Użyj jednej z tych metod, jeśli oczekuje się, że więcej niż jeden filtr będzie pasować do komunikatu, a pasujące filtry są wymagane. Pamiętaj, że kolekcja zawierająca filtry nie jest czyszczone przed dodaniu wyników. Dzięki temu można gromadzić wszystkie dopasowania w wielu tabelach filtrów w jedną kolekcję.

Jeśli treść komunikatu musi być sprawdzana przez filtr w tabeli filtrów, buforuj komunikat i przekaż go do GetMatchingFilters metody. W przeciwnym razie użyj polecenia GetMatchingFilters.

Pasujące MessageFilter obiekty są przechowywane w parametrze results . Następnie dane filtru można odzyskać z tabeli filtrów przy użyciu tych filtrów jako kluczy z metodami dostarczonymi przez IDictionary<TKey,TValue>usługę .

GetMatchingFilters(Message, ICollection<MessageFilter>)

Źródło:
IMessageFilterTable.cs
Źródło:
IMessageFilterTable.cs

Zwraca wartość wskazującą, czy kryterium dopasowania filtru w tabeli jest spełnione przez określony komunikat i dodaje pasujące filtry do kolekcji.

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

Parametry

message
Message

Element Message do przetestowania.

results
ICollection<MessageFilter>

Parametr odwołania, który przechowuje MessageFilter obiekty zgodne z filtrem<ICollection<T>>.

Zwraca

true jeśli kryterium dopasowania co najmniej jednego filtru w tabeli jest spełnione przez messageparametr ; false jeśli żaden filtr nie jest spełniony.

Uwagi

Użyj tej metody, gdy oczekuje się, że komunikat będzie zgodny z więcej niż jednym filtrem, wymagane są pasujące filtry, a treść komunikatu nie musi być sprawdzana.

Uwagi dotyczące implementowania

Ta wersja przyjmuje element Message i musi zgłosić InvalidBodyAccessException wartość , jeśli próbuje zbadać treść komunikatu.

Dotyczy

GetMatchingFilters(MessageBuffer, ICollection<MessageFilter>)

Źródło:
IMessageFilterTable.cs
Źródło:
IMessageFilterTable.cs

Zwraca wartość wskazującą, czy kryterium dopasowania filtru w tabeli jest spełnione przez określony komunikat buforowany i dodaje pasujące filtry do kolekcji.

public:
 bool GetMatchingFilters(System::ServiceModel::Channels::MessageBuffer ^ messageBuffer, 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);
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

Parametry

messageBuffer
MessageBuffer

Element MessageBuffer do przetestowania.

results
ICollection<MessageFilter>

Parametr odwołania, który przechowuje MessageFilter obiekty zgodne z filtrem<ICollection<T>>.

Zwraca

true jeśli kryterium dopasowania co najmniej jednego filtru w tabeli jest spełnione przez messageBufferparametr ; false jeśli żaden filtr nie jest spełniony.

Uwagi

Użyj tej metody, gdy oczekuje się, że więcej niż jeden filtr jest zgodny z buforowaną wiadomością, wymagany jest pasujący filtr, a treść komunikatu może być sprawdzana.

Dotyczy