XPathMessageFilterTable<TFilterData>.GetMatchingValue Метод

Определение

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

Перегрузки

GetMatchingValue(Message, TFilterData)

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

GetMatchingValue(MessageBuffer, TFilterData)

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

GetMatchingValue(SeekableXPathNavigator, TFilterData)

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

GetMatchingValue(XPathNavigator, TFilterData)

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

Комментарии

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

Первые два метода являются реализациями GetMatchingValue.

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

Оставшиеся два метода являются перегрузками, характерными для XPathMessageFilterTable<TFilterData>. Чтобы отфильтровать документ, предоставленный навигатором, используйте метод GetMatchingValue или GetMatchingValue.

GetMatchingValue(Message, TFilterData)

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

public:
 virtual bool GetMatchingValue(System::ServiceModel::Channels::Message ^ message, [Runtime::InteropServices::Out] TFilterData % data);
public bool GetMatchingValue (System.ServiceModel.Channels.Message message, out TFilterData data);
abstract member GetMatchingValue : System.ServiceModel.Channels.Message * 'FilterData -> bool
override this.GetMatchingValue : System.ServiceModel.Channels.Message * 'FilterData -> bool
Public Function GetMatchingValue (message As Message, ByRef data As TFilterData) As Boolean

Параметры

message
Message

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

data
TFilterData

Параметр out, хранящий параметр FilterData для фильтра, удовлетворяющего условиям message.

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

Boolean

true, если сообщение удовлетворяет критериям соответствия одного фильтра в таблице; false, если не соответствует ни одному фильтру.

Реализации

Исключения

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

Найдено несколько фильтров, соответствующих параметру message.

Комментарии

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

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

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

GetMatchingValue(MessageBuffer, TFilterData)

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

public:
 virtual bool GetMatchingValue(System::ServiceModel::Channels::MessageBuffer ^ messageBuffer, [Runtime::InteropServices::Out] TFilterData % data);
public bool GetMatchingValue (System.ServiceModel.Channels.MessageBuffer messageBuffer, out TFilterData data);
abstract member GetMatchingValue : System.ServiceModel.Channels.MessageBuffer * 'FilterData -> bool
override this.GetMatchingValue : System.ServiceModel.Channels.MessageBuffer * 'FilterData -> bool
Public Function GetMatchingValue (messageBuffer As MessageBuffer, ByRef data As TFilterData) As Boolean

Параметры

messageBuffer
MessageBuffer

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

data
TFilterData

Параметр out, хранящий параметр FilterData для фильтра, удовлетворяющего условиям messageBuffer.

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

Boolean

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

Реализации

Исключения

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

Найдено несколько фильтров, соответствующих параметру messageBuffer.

Комментарии

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

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

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

GetMatchingValue(SeekableXPathNavigator, TFilterData)

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

public:
 bool GetMatchingValue(System::ServiceModel::Dispatcher::SeekableXPathNavigator ^ navigator, [Runtime::InteropServices::Out] TFilterData % data);
public bool GetMatchingValue (System.ServiceModel.Dispatcher.SeekableXPathNavigator navigator, out TFilterData data);
member this.GetMatchingValue : System.ServiceModel.Dispatcher.SeekableXPathNavigator * 'FilterData -> bool
Public Function GetMatchingValue (navigator As SeekableXPathNavigator, ByRef data As TFilterData) As Boolean

Параметры

navigator
SeekableXPathNavigator

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

data
TFilterData

Параметр out, хранящий параметр FilterData, удовлетворяющий условиям navigator.

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

Boolean

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

Исключения

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

Найдено несколько фильтров, соответствующих параметру navigator.

Комментарии

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

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

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

GetMatchingValue(XPathNavigator, TFilterData)

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

public:
 bool GetMatchingValue(System::Xml::XPath::XPathNavigator ^ navigator, [Runtime::InteropServices::Out] TFilterData % data);
public bool GetMatchingValue (System.Xml.XPath.XPathNavigator navigator, out TFilterData data);
member this.GetMatchingValue : System.Xml.XPath.XPathNavigator * 'FilterData -> bool
Public Function GetMatchingValue (navigator As XPathNavigator, ByRef data As TFilterData) As Boolean

Параметры

navigator
XPathNavigator

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

data
TFilterData

Параметр out, хранящий параметр FilterData, удовлетворяющий условиям navigator.

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

Boolean

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

Исключения

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

Найдено несколько фильтров, соответствующих параметру navigator.

Комментарии

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

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