MessageFilterTable<TFilterData>.GetMatchingFilters Метод

Определение

Возвращает значение, указывающее, удовлетворяет ли заданное сообщение или буферизованное сообщение критерию соответствия хотя бы одного объекта MessageFilter, и добавляет соответствующие фильтры в коллекцию.

Перегрузки

GetMatchingFilters(Message, ICollection<MessageFilter>)

Возвращает значение, указывающее, удовлетворяет ли заданное сообщение критерию соответствия хотя бы одного объекта MessageFilter, и добавляет соответствующие фильтры в коллекцию.

GetMatchingFilters(MessageBuffer, ICollection<MessageFilter>)

Возвращает значение, указывающее, удовлетворяет ли заданное буферизованное сообщение критерию соответствия хотя бы одного фильтра, и добавляет соответствующие критериям фильтры из блока наивысших приоритетов фильтров, в котором найдено хотя бы одно соответствие, в коллекцию.

Комментарии

Используйте этот метод, если предполагается, что несколько фильтров будут удовлетворять условиям сообщения, и эти фильтры требуются.

GetMatchingFilters(Message, ICollection<MessageFilter>)

Возвращает значение, указывающее, удовлетворяет ли заданное сообщение критерию соответствия хотя бы одного объекта MessageFilter, и добавляет соответствующие фильтры в коллекцию.

public:
 virtual 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
override this.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

Параметры

message
Message

Объект Message для проверки.

results
ICollection<MessageFilter>

Ссылочный параметр, в котором хранятся объекты MessageFilter, соответствующие условиям фильтра ICollection<T><Filter>.

Возвращаемое значение

Boolean

true, если критерию соответствия хотя бы одного объекта MessageFilter в таблице удовлетворяет параметр message; false, если не найдено ни одного фильтра.

Реализации

Исключения

results имеет значение null.

Была предпринята попытка проверить содержимое тела сообщения с помощью фильтра.

Комментарии

Используйте этот метод, если предполагается, что несколько фильтров будут удовлетворять условиям сообщения, и эти фильтры требуются.

Этот метод производит проверку на наличие совпадающих с критериями поиска фильтров в блоке наивысших приоритетов фильтров, в котором находится хотя бы одно соответствие.

Фильтрам в таблице не разрешается проверять текст сообщения.

Объекты MessageFilter, соответствующие запросу, хранятся в параметре results коллекции ICollection<T>. Параметр FilterData затем может быть восстановлен из таблицы фильтров путем использования этих фильтров в качестве ключей с методами, предоставляемыми словарем IDictionary<TKey,TValue>.

Этот метод реализует GetMatchingFilters.

Применяется к

GetMatchingFilters(MessageBuffer, ICollection<MessageFilter>)

Возвращает значение, указывающее, удовлетворяет ли заданное буферизованное сообщение критерию соответствия хотя бы одного фильтра, и добавляет соответствующие критериям фильтры из блока наивысших приоритетов фильтров, в котором найдено хотя бы одно соответствие, в коллекцию.

public:
 virtual bool GetMatchingFilters(System::ServiceModel::Channels::MessageBuffer ^ buffer, 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
override this.GetMatchingFilters : System.ServiceModel.Channels.MessageBuffer * System.Collections.Generic.ICollection<System.ServiceModel.Dispatcher.MessageFilter> -> bool
Public Function GetMatchingFilters (buffer As MessageBuffer, results As ICollection(Of MessageFilter)) As Boolean

Параметры

buffer
MessageBuffer

Объект MessageBuffer для проверки.

results
ICollection<MessageFilter>

Ссылочный параметр, в котором хранятся объекты MessageFilter, соответствующие условиям фильтра ICollection<T><Filter>.

Возвращаемое значение

Boolean

true, если параметр message удовлетворяет критерию соответствия по крайней мере одного фильтра из таблицы; false, если не удовлетворяются критерии ни одного из фильтров.

Реализации

Исключения

results имеет значение null.

Комментарии

Используйте этот метод, если предполагается, что несколько фильтров будут удовлетворять условиям буферизованного сообщения, и эти фильтры требуются.

Фильтрам в таблице разрешается проверять текст сообщения.

Объекты MessageFilter, соответствующие запросу, хранятся в параметре results коллекции ICollection<T>. Параметр FilterData затем может быть восстановлен из таблицы фильтров путем использования этих фильтров в качестве ключей с методами, предоставляемыми словарем IDictionary<TKey,TValue>.

Этот метод реализует GetMatchingFilters.

Применяется к