IMessageFilterTable<TFilterData>.GetMatchingFilter Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает фильтр из таблицы, чьим критериям запроса удовлетворяет указанное сообщение или буферизованное сообщение.
Перегрузки
GetMatchingFilter(Message, MessageFilter) |
Возвращает значение, указывающее, удовлетворяет ли заданное сообщение критерию соответствия одного фильтра, и возвращает этот фильтр в параметре |
GetMatchingFilter(MessageBuffer, MessageFilter) |
Возвращает значение, указывающее, удовлетворяет ли заданное или буферизованное сообщение критерию соответствия одного фильтра, и возвращает этот фильтр в параметре |
Комментарии
Используйте этот метод, если предполагается, что только один фильтр будет удовлетворять сообщению, и этот фильтр требуется.
Используйте метод GetMatchingFilter, если содержимое текста не требуется проверять. Используйте метод GetMatchingFilter, если содержимое текста сообщения может потребовать проверки.
GetMatchingFilter(Message, MessageFilter)
- Исходный код:
- IMessageFilterTable.cs
Возвращает значение, указывающее, удовлетворяет ли заданное сообщение критерию соответствия одного фильтра, и возвращает этот фильтр в параметре out
.
public:
bool GetMatchingFilter(System::ServiceModel::Channels::Message ^ message, [Runtime::InteropServices::Out] System::ServiceModel::Dispatcher::MessageFilter ^ % filter);
public bool GetMatchingFilter (System.ServiceModel.Channels.Message message, out System.ServiceModel.Dispatcher.MessageFilter filter);
abstract member GetMatchingFilter : System.ServiceModel.Channels.Message * MessageFilter -> bool
Public Function GetMatchingFilter (message As Message, ByRef filter As MessageFilter) As Boolean
Параметры
- filter
- MessageFilter
Параметр out
, содержащий фильтр, которому удовлетворяет параметр message
. Если фильтр не найден, параметру присваивается значение по умолчанию.
Возвращаемое значение
true
, если параметр message
удовлетворяет критерию соответствия по крайней мере одного фильтра из таблицы; false
, если не удовлетворяются критерии ни одного из фильтров.
Комментарии
Используйте этот метод, если предполагается, что только один фильтр будет удовлетворять сообщению, и этот фильтр требуется.
Если текст сообщения должен проверяться фильтром в таблице фильтров, то используйте GetMatchingFilter версию метод.
Примечания для тех, кто реализует этот метод
Если сообщению соответствуют несколько фильтров, должно быть создано исключение MultipleFilterMatchesException.
В данной версии берется Message и должно выдаваться исключение InvalidBodyAccessException, если производится попытка проверить текст сообщения.
Применяется к
GetMatchingFilter(MessageBuffer, MessageFilter)
- Исходный код:
- IMessageFilterTable.cs
Возвращает значение, указывающее, удовлетворяет ли заданное или буферизованное сообщение критерию соответствия одного фильтра, и возвращает этот фильтр в параметре out
.
public:
bool GetMatchingFilter(System::ServiceModel::Channels::MessageBuffer ^ messageBuffer, [Runtime::InteropServices::Out] System::ServiceModel::Dispatcher::MessageFilter ^ % filter);
public bool GetMatchingFilter (System.ServiceModel.Channels.MessageBuffer messageBuffer, out System.ServiceModel.Dispatcher.MessageFilter filter);
abstract member GetMatchingFilter : System.ServiceModel.Channels.MessageBuffer * MessageFilter -> bool
Public Function GetMatchingFilter (messageBuffer As MessageBuffer, ByRef filter As MessageFilter) As Boolean
Параметры
- messageBuffer
- MessageBuffer
Объект MessageBuffer для проверки.
- filter
- MessageFilter
Параметр out
, содержащий фильтр, которому удовлетворяет параметр message
. Если фильтр не найден, параметру присваивается значение по умолчанию.
Возвращаемое значение
true
, если параметр messageBuffer
удовлетворяет критерию соответствия по крайней мере одного фильтра из таблицы; false
, если не удовлетворяются критерии ни одного из фильтров.
Комментарии
Используйте этот метод, если предполагается, что только один фильтр будет удовлетворять буферизованному сообщению, и соответствующий фильтр должен быть возвращен, а тело сообщения может потребоваться проверить.