Поделиться через


IMessageFilterTable<TFilterData>.GetMatchingFilter Метод

Определение

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

Перегрузки

GetMatchingFilter(Message, MessageFilter)

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

GetMatchingFilter(MessageBuffer, MessageFilter)

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

Комментарии

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

Используйте метод GetMatchingFilter, если содержимое текста не требуется проверять. Используйте метод GetMatchingFilter, если содержимое текста сообщения может потребовать проверки.

GetMatchingFilter(Message, MessageFilter)

Исходный код:
IMessageFilterTable.cs
Исходный код:
IMessageFilterTable.cs
Исходный код:
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

Параметры

message
Message

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

filter
MessageFilter

Параметр out, содержащий фильтр, которому удовлетворяет параметр message. Если фильтр не найден, параметру присваивается значение по умолчанию.

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

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

Комментарии

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

Если текст сообщения должен проверяться фильтром в таблице фильтров, то используйте GetMatchingFilter версию метод.

Примечания для тех, кто реализует этот метод

Если сообщению соответствуют несколько фильтров, должно быть создано исключение MultipleFilterMatchesException.

В данной версии берется Message и должно выдаваться исключение InvalidBodyAccessException, если производится попытка проверить текст сообщения.

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

GetMatchingFilter(MessageBuffer, MessageFilter)

Исходный код:
IMessageFilterTable.cs
Исходный код:
IMessageFilterTable.cs
Исходный код:
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, если не удовлетворяются критерии ни одного из фильтров.

Комментарии

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

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