XPathMessageContext 类  
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
定义利用 SOAP 文档计算 XPath 表达式时经常要使用的多个 XPath 函数和命名空间映射。
public ref class XPathMessageContext : System::Xml::Xsl::XsltContextpublic class XPathMessageContext : System.Xml.Xsl.XsltContext[System.ComponentModel.TypeConverter(typeof(System.ServiceModel.XamlIntegration.XPathMessageContextTypeConverter))]
public class XPathMessageContext : System.Xml.Xsl.XsltContexttype XPathMessageContext = class
    inherit XsltContext[<System.ComponentModel.TypeConverter(typeof(System.ServiceModel.XamlIntegration.XPathMessageContextTypeConverter))>]
type XPathMessageContext = class
    inherit XsltContextPublic Class XPathMessageContext
Inherits XsltContext- 继承
- 属性
注解
XPath 引擎具有完整的 XPath 上下文支持,.NET Framework的 类,其方式与实现 XsltContext XPathNavigator 此支持的方式相同。 XsltContext 是一个抽象类,允许开发人员实现自定义 XPath 函数库并声明 XPath 变量。 XsltContext 是 XmlNamespaceManager ,因此还包含命名空间前缀映射。
筛选器引擎可以实现名称为 XsltContext 的 XPathMessageContext。 XPathMessageContext 不但可以定义 Xpath 表达式中使用的自定义函数,还可声明多个常用的命名空间前缀映射。 下表列出了 由 定义的自定义函数 XPathMessageContext ,这些函数可在 XPath 表达式中使用。
| XPath 函数 | 说明 | 
|---|---|
| body | 返回 SOAP 正文节点,而不考虑 1.1 (SOAP 版本。 或 1.2) 。 | 
| 标头的值开始缓存响应 | 返回 SOAP 标头节点,无论 SOAP 版本 (1.1 或 1.2) 。 | 
| correlation-data | 采用输入字符串并返回关联关联消息属性的值。 "wsc-instanceId"是一个保留字符串,用于基于上下文的相关性。 | 
| messageId | 返回 MessageID WS-Addressing的值。 | 
| relatesTo | 返回 WS-Addressing RelatesTo 标头的值,而不考虑版本 (2004 年 8 月或 WSA 1.0) 。 | 
| replyTo | 返回 ReplyTo 标头WS-Addressing,而不考虑版本 (2004 年 8 月或 WSA 1.0) 。 | 
| from | 无论版本为 2004 年 8 月 (WSA 1.0 版本,返回 WS-Addressing From 标头) 。 | 
| faultTo | 返回 FaultTo 标头WS-Addressing,而不考虑版本 (2004 年 8 月或 WSA 1.0) 。 | 
| 设置为 | 如果存在,则返回 WS-Addressing To 标头的值,否则返回 Anonymous。 | 
| action | 返回 Action WS-Addressing的值。 | 
| soap-uri | 返回 SOAP 命名空间 URI。 | 
| headers-with-actor | 采用 SOAP 执行组件 URI 并返回包含该执行组件的所有标头,而不考虑 SOAP (1.1 或 1.2) 。 | 
| actor | 返回第一个子节点的 SOAP 执行组件 URI,而不考虑 1.1 (1.2 或 1.2) 。 | 
| is-mandatory | 返回第一个子节点是否是必需的,无论 SOAP 版本 (1.1 或 1.2) 。 | 
| is-actor-next | 返回第一个子节点的 SOAP 执行组件 URI 是否具有下一个角色,而不考虑 SOAP 版本 (1.1 或 1.2) 。 | 
| is-actor-ultimate-receiver | 返回第一个子节点的 SOAP 执行组件 URI 是否具有 UltimateReceiver 角色,而不考虑 SOAP 版本 (1.1 或 1.2) 。 | 
| 日期时间 | 采用输入日期字符串,并返回转换为双精度值的值。 | 
| duration | 采用输入时间跨度字符串,并返回总天数的值。 | 
| utc-now | 返回 的值 UtcNow 。 | 
下表列出了 由 声明的默认命名空间和命名空间前缀 XPathMessageContext 。
| 前缀 | 命名空间 | 
|---|---|
| s11 | http://schemas.xmlsoap.org/soap/envelope | 
| s12 | http://www.w3.org/2003/05/soap-envelope | 
| wsaAugust2004 | http://schemas.xmlsoap.org/ws/2004/08/addressing | 
| wsa10 | http://www.w3.org/2005/08/addressing | 
| sm | http://schemas.microsoft.com/serviceModel/2004/05/xpathfunctions | 
| tempuri | http://tempuri.org | 
| ser | http://schemas.microsoft.com/2003/10/Serialization | 
构造函数
| XPathMessageContext() | 创建 XPathMessageContext 的实例。 | 
| XPathMessageContext(NameTable) | 使用指定的 XPathMessageContext 初始化 NameTable 类的新实例。 | 
属性
| DefaultNamespace | 获取默认命名空间的命名空间 URI。(继承自 XmlNamespaceManager) | 
| NameTable | 获取与此对象关联的 XmlNameTable。(继承自 XmlNamespaceManager) | 
| Whitespace | 获取一个值,该值指示是否在输出中包含空白节点。 | 
方法
扩展方法
| Cast<TResult>(IEnumerable) | 将 IEnumerable 的元素强制转换为指定的类型。 | 
| OfType<TResult>(IEnumerable) | 根据指定类型筛选 IEnumerable 的元素。 | 
| AsParallel(IEnumerable) | 启用查询的并行化。 | 
| AsQueryable(IEnumerable) | 将 IEnumerable 转换为 IQueryable。 |