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
Параметры
- results
- ICollection<MessageFilter>
Ссылочный параметр, в котором хранятся объекты MessageFilter, соответствующие условиям фильтра ICollection<T><Filter>.
Возвращаемое значение
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>.
Возвращаемое значение
true
, если параметр message
удовлетворяет критерию соответствия по крайней мере одного фильтра из таблицы; false
, если не удовлетворяются критерии ни одного из фильтров.
Реализации
Исключения
results
имеет значение null
.
Комментарии
Используйте этот метод, если предполагается, что несколько фильтров будут удовлетворять условиям буферизованного сообщения, и эти фильтры требуются.
Фильтрам в таблице разрешается проверять текст сообщения.
Объекты MessageFilter, соответствующие запросу, хранятся в параметре results
коллекции ICollection<T>. Параметр FilterData
затем может быть восстановлен из таблицы фильтров путем использования этих фильтров в качестве ключей с методами, предоставляемыми словарем IDictionary<TKey,TValue>.
Этот метод реализует GetMatchingFilters.