XPathMessageFilterTable<TFilterData>.GetMatchingValue 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
返回一个值,该值指示指定的文档对象是否正好满足表中的一个 XPathMessageFilter 的匹配条件,然后将匹配的筛选数据添加到集合。
重载
GetMatchingValue(Message, TFilterData) |
返回一个值,该值指示指定的消息是否正好满足表中的一个 XPathMessageFilter 的匹配条件,然后返回匹配的筛选数据。 |
GetMatchingValue(MessageBuffer, TFilterData) |
返回一个值,该值指示指定的缓冲消息是否正好满足表中的一个 XPathMessageFilter 的匹配条件,然后返回匹配的筛选数据。 |
GetMatchingValue(SeekableXPathNavigator, TFilterData) |
返回一个值,该值指示 SeekableXPathNavigator 是否正好满足表中的一个 |
GetMatchingValue(XPathNavigator, TFilterData) |
返回一个值,该值指示 XPathNavigator 是否正好满足表中的一个 |
注解
当预期有单个筛选器与文档对象相匹配,并且只需要恢复匹配筛选器的 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
参数
- data
- TFilterData
out
参数,存储与 message
匹配的筛选器的 FilterData
。
返回
如果消息满足表中一个筛选器的匹配条件,则为 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
参数,存储与 messageBuffer
匹配的筛选器的 FilterData
。
返回
如果缓冲消息满足表中一个筛选器的匹配条件,则为 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
参数,存储与 navigator
匹配的 FilterData
。
返回
如果 navigator
正好满足表中一个筛选器的匹配条件,则为 true
;如果不满足任何筛选器,则为 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
参数,存储与 navigator
匹配的 FilterData
。
返回
如果 navigator
正好满足表中一个筛选器的匹配条件,则为 true
;如果不满足任何筛选器,则为 false
。
例外
navigator
为 null
。
多个筛选器与 navigator
相匹配。
注解
使用此方法指定消息必须满足的 XPath 条件。