SeekableXPathNavigator 类

定义

提供对 XML 文档中包含的数据的随机只读访问,并可以实现对指定的节点进行有效查询。

public ref class SeekableXPathNavigator abstract : System::Xml::XPath::XPathNavigator
public abstract class SeekableXPathNavigator : System.Xml.XPath.XPathNavigator
type SeekableXPathNavigator = class
    inherit XPathNavigator
Public MustInherit Class SeekableXPathNavigator
Inherits XPathNavigator
继承
SeekableXPathNavigator

注解

在 Windows Communication Foundation (WCF) 系统的各个部分之间传递的 SOAP 消息由系统的各个组件处理,这些组件必须检查这些消息以确定在处理这些消息时要采取的操作。 XPath 引擎就是一个这样的消息查询的组件,它需要导航器来读取 SOAP 消息以及其他 XML 文档。 导航器可提供一个游标,该游标会在节点间移动,跟踪 XML 文档的实际读取部分。

XPath 引擎与 SeekableXPathNavigator 一起工作,后者可通过添加 XPathNavigator 属性来扩展 CurrentPosition 类。 利用此属性可以快速保存和加载 XML 文档内的位置,而无需克隆导航器 — 此克隆操作需要执行大量内存分配,并且是 XPathNavigator 执行类似的保存和加载操作所需要的。 XPath 引擎必须在 XML 文档的查询过程中,频繁地记录游标的位置;因此,SeekableXPathNavigator 为消息处理提供了重要优化。

注意,CurrentPosition 属性的值是特定于实现的,因此可能不会映射到节点位置或字符位置。 该属性的值仅对提供该属性的 SeekableXPathNavigator 实现(和实例)有意义。

构造函数

SeekableXPathNavigator()

初始化 SeekableXPathNavigator 类的新实例。

属性

BaseURI

当在派生类中被重写时,获取当前节点的基 URI。

(继承自 XPathNavigator)
CanEdit

获取一个值,该值指示 XPathNavigator 是否可以编辑基础 XML 数据。

(继承自 XPathNavigator)
CurrentPosition

在派生类中重写时,获取或设置与 XPath 导航器所在的数据节点关联的值。

HasAttributes

获取一个值,该值指示当前节点是否有任何属性。

(继承自 XPathNavigator)
HasChildren

获取一个值,该值指示当前节点是否有任何子节点。

(继承自 XPathNavigator)
InnerXml

获取或设置表示当前节点的子节点标记。

(继承自 XPathNavigator)
IsEmptyElement

当在派生类中被重写时,获取一个值,该值指示当前节点是否是一个没有结束元素标记的空元素。

(继承自 XPathNavigator)
IsNode

获取一个值,该值指示当前节点是否表示一个 XPath 节点。

(继承自 XPathNavigator)
LocalName

在派生类中被重写时,获取当前节点的 Name(不带任何命名空间前缀)。

(继承自 XPathNavigator)
Name

当在派生类中被重写时,获取当前节点的限定名。

(继承自 XPathNavigator)
NamespaceURI

当在派生类中被重写时,获取当前节点的命名空间 URI。

(继承自 XPathNavigator)
NameTable

当在派生类中被重写时,获取 XmlNameTableXPathNavigator

(继承自 XPathNavigator)
NodeType

当在派生类中被重写时,获取当前节点的 XPathNodeType

(继承自 XPathNavigator)
OuterXml

获取或设置表示当前节点及其子节点的开始标记及结束标记的标记。

(继承自 XPathNavigator)
Prefix

当在派生类中被重写时,获取与当前节点关联的命名空间前缀。

(继承自 XPathNavigator)
SchemaInfo

获取作为架构验证结果分配给当前节点的架构信息。

(继承自 XPathNavigator)
TypedValue

获取作为最合适的 .NET 类型的已装箱对象的当前节点。

(继承自 XPathNavigator)
UnderlyingObject

由在存储区上提供“虚拟化”XML 视图的 XPathNavigator 实现使用,以提供对基础对象的访问。

(继承自 XPathNavigator)
Value

当在派生类中重写时,获取该项的字符串值。

(继承自 XPathNavigator)
ValueAsBoolean

获取当前节点的 Boolean 类型的值。

(继承自 XPathNavigator)
ValueAsDateTime

获取当前节点的 DateTime 类型的值。

(继承自 XPathNavigator)
ValueAsDouble

获取当前节点的 Double 类型的值。

(继承自 XPathNavigator)
ValueAsInt

获取当前节点的 Int32 类型的值。

(继承自 XPathNavigator)
ValueAsLong

获取当前节点的 Int64 类型的值。

(继承自 XPathNavigator)
ValueType

获取当前节点的 .NET Type

(继承自 XPathNavigator)
XmlLang

获取当前节点的 xml:lang 范围。

(继承自 XPathNavigator)
XmlType

获取当前节点的 XmlSchemaType 信息。

(继承自 XPathNavigator)

方法

AppendChild()

返回一个 XmlWriter 对象,该对象用于在当前节点的子节点列表的末尾创建一个或多个新的子节点。

(继承自 XPathNavigator)
AppendChild(String)

使用指定的 XML 数据字符串在当前节点的子节点列表的末尾创建一个新的子节点。

(继承自 XPathNavigator)
AppendChild(XmlReader)

使用指定的 XmlReader 对象的 XML 内容在当前节点的子节点列表的末尾创建一个新的子节点。

(继承自 XPathNavigator)
AppendChild(XPathNavigator)

使用指定的 XPathNavigator 中的节点在当前节点的子节点列表的末尾创建一个新的子节点。

(继承自 XPathNavigator)
AppendChildElement(String, String, String, String)

使用通过指定值指定的命名空间前缀、本地名称和命名空间 URI 在当前节点的子节点列表的末尾创建一个新的子元素节点。

(继承自 XPathNavigator)
CheckValidity(XmlSchemaSet, ValidationEventHandler)

验证 XPathNavigator 中的 XML 数据是否符合所提供的 XML 架构定义语言 (XSD) 架构。

(继承自 XPathNavigator)
Clone()

当在派生类中被重写时,创建一个新的 XPathNavigator,它定位到的节点与此 XPathNavigator 定位到的节点相同。

(继承自 XPathNavigator)
ComparePosition(Int64, Int64)

在派生类中重写时,返回描述两个指定位置的文档顺序的值。

ComparePosition(XPathNavigator)

将当前 XPathNavigator 的位置与指定的 XPathNavigator 的位置进行比较。

(继承自 XPathNavigator)
Compile(String)

编译一个表示 XPath 表达式的字符串,并返回 XPathExpression 对象。

(继承自 XPathNavigator)
CreateAttribute(String, String, String, String)

使用通过指定值指定的命名空间前缀、本地名称和命名空间 URI 在当前元素节点上创建一个属性节点。

(继承自 XPathNavigator)
CreateAttributes()

返回一个 XmlWriter 对象,该对象用于在当前元素上创建一个新属性。

(继承自 XPathNavigator)
CreateNavigator()

返回 XPathNavigator 的一个副本。

(继承自 XPathNavigator)
DeleteRange(XPathNavigator)

删除从当前节点到指定节点之间的一组同级节点。

(继承自 XPathNavigator)
DeleteSelf()

删除当前节点及其子节点。

(继承自 XPathNavigator)
Equals(Object)

确定指定对象是否等于当前对象。

(继承自 Object)
Evaluate(String)

计算指定的 XPath 表达式并返回类型化结果。

(继承自 XPathNavigator)
Evaluate(String, IXmlNamespaceResolver)

计算指定的 XPath 表达式并返回类型化结果,以使用指定的 IXmlNamespaceResolver 对象解析 XPath 表达式中的命名空间前缀。

(继承自 XPathNavigator)
Evaluate(XPathExpression)

计算 XPathExpression 并返回类型化结果。

(继承自 XPathNavigator)
Evaluate(XPathExpression, XPathNodeIterator)

使用提供的上下文计算 XPathExpression,并返回类型化结果。

(继承自 XPathNavigator)
GetAttribute(String, String)

获取具有指定本地名称和命名空间 URI 的属性的值。

(继承自 XPathNavigator)
GetHashCode()

作为默认哈希函数。

(继承自 Object)
GetLocalName(Int64)

在派生类中重写时,返回位于指定位置的节点的本地名称。

GetName(Int64)

在派生类中重写时,返回位于指定位置的节点的名称。

GetNamespace(Int64)

在派生类中重写时,返回位于指定位置的节点的命名空间。

GetNamespace(String)

返回与所指定本地名称对应的命名空间节点的值。

(继承自 XPathNavigator)
GetNamespacesInScope(XmlNamespaceScope)

返回当前节点的范围内命名空间。

(继承自 XPathNavigator)
GetNodeType(Int64)

在派生类中重写时,返回位于指定位置的节点的类型。

GetType()

获取当前实例的 Type

(继承自 Object)
GetValue(Int64)

在派生类中重写时,返回位于指定位置的节点的文本值。

InsertAfter()

返回一个 XmlWriter 对象,该对象用于在当前选定的节点之后创建一个新的同级节点。

(继承自 XPathNavigator)
InsertAfter(String)

使用指定的 XML 字符串在当前选定的节点之后创建一个新的同级节点。

(继承自 XPathNavigator)
InsertAfter(XmlReader)

使用指定的 XmlReader 对象的 XML 内容,在当前所选节点之后创建一个新的同级节点。

(继承自 XPathNavigator)
InsertAfter(XPathNavigator)

使用指定的 XPathNavigator 对象中的节点在当前选定的节点之后创建一个新的同级节点。

(继承自 XPathNavigator)
InsertBefore()

返回一个 XmlWriter 对象,该对象用于在当前选定的节点之前创建一个新的同级节点。

(继承自 XPathNavigator)
InsertBefore(String)

使用指定的 XML 字符串在当前选定的节点之前创建一个新的同级节点。

(继承自 XPathNavigator)
InsertBefore(XmlReader)

使用 XmlReader 对象指定的 XML 内容在当前选定的节点之前创建一个新的同级节点。

(继承自 XPathNavigator)
InsertBefore(XPathNavigator)

使用指定的 XPathNavigator 中的节点在当前选定的节点之前创建一个新的同级节点。

(继承自 XPathNavigator)
InsertElementAfter(String, String, String, String)

使用通过指定值指定的命名空间前缀、本地名称和命名空间 URI 在当前节点之后创建一个新的同级元素。

(继承自 XPathNavigator)
InsertElementBefore(String, String, String, String)

使用通过指定值指定的命名空间前缀、本地名称和命名空间 URI 在当前节点之前创建一个新的同级元素。

(继承自 XPathNavigator)
IsDescendant(XPathNavigator)

确定指定的 XPathNavigator 是否是当前 XPathNavigator 的子代。

(继承自 XPathNavigator)
IsSamePosition(XPathNavigator)

当在派生类中被重写时,确定当前的 XPathNavigator 是否位于与指定的 XPathNavigator 相同的位置。

(继承自 XPathNavigator)
LookupNamespace(String)

获取指定前缀的命名空间 URI。

(继承自 XPathNavigator)
LookupPrefix(String)

获取为指定的命名空间 URI 声明的前缀。

(继承自 XPathNavigator)
Matches(String)

确定当前节点是否与指定的 XPath 表达式匹配。

(继承自 XPathNavigator)
Matches(XPathExpression)

确定当前节点是否匹配指定的 XPathExpression

(继承自 XPathNavigator)
MemberwiseClone()

创建当前 Object 的浅表副本。

(继承自 Object)
MoveTo(XPathNavigator)

当在派生类中被重写时,将 XPathNavigator 移动到与指定的 XPathNavigator 相同的位置。

(继承自 XPathNavigator)
MoveToAttribute(String, String)

XPathNavigator 移动到具有匹配的本地名称和命名空间 URI 的属性上。

(继承自 XPathNavigator)
MoveToChild(String, String)

XPathNavigator 移动到具有指定的本地名称和命名空间 URI 的子节点。

(继承自 XPathNavigator)
MoveToChild(XPathNodeType)

XPathNavigator 移动到指定的 XPathNodeType 的子节点。

(继承自 XPathNavigator)
MoveToFirst()

XPathNavigator 移至当前节点的第一个同级节点。

(继承自 XPathNavigator)
MoveToFirstAttribute()

当在派生类中重写时,将 XPathNavigator 移动到当前节点的第一个属性。

(继承自 XPathNavigator)
MoveToFirstChild()

当在派生类中被重写时,将 XPathNavigator 移动到当前节点的第一个子节点。

(继承自 XPathNavigator)
MoveToFirstNamespace()

XPathNavigator 移动到当前节点的第一个命名空间节点。

(继承自 XPathNavigator)
MoveToFirstNamespace(XPathNamespaceScope)

当在派生类中被重写时,将 XPathNavigator 移动到与指定的 XPathNamespaceScope 匹配的第一个命名空间节点。

(继承自 XPathNavigator)
MoveToFollowing(String, String)

按文档顺序将 XPathNavigator 移动到具有指定的本地名称和命名空间 URI 的元素。

(继承自 XPathNavigator)
MoveToFollowing(String, String, XPathNavigator)

按文档顺序将 XPathNavigator 移动到指定的边界内具有指定的本地名称和命名空间 URI 的元素。

(继承自 XPathNavigator)
MoveToFollowing(XPathNodeType)

按文档顺序将 XPathNavigator 移动到下一个属于指定 XPathNodeType 的元素。

(继承自 XPathNavigator)
MoveToFollowing(XPathNodeType, XPathNavigator)

按文档顺序将 XPathNavigator 移动到指定边界内下一个属于指定 XPathNodeType 的元素。

(继承自 XPathNavigator)
MoveToId(String)

当在派生类中重写时,移动到具有 ID 类型的属性并且属性值与指定的 String 匹配的节点。

(继承自 XPathNavigator)
MoveToNamespace(String)

XPathNavigator 移动到具有指定的命名空间前缀的命名空间节点。

(继承自 XPathNavigator)
MoveToNext()

当在派生类中被重写时,将 XPathNavigator 移动到当前节点的下一个同级节点。

(继承自 XPathNavigator)
MoveToNext(String, String)

XPathNavigator 移动到下一个具有指定的本地名称和命名空间 URI 的同级节点。

(继承自 XPathNavigator)
MoveToNext(XPathNodeType)

XPathNavigator 移动到当前节点中与指定的 XPathNodeType 匹配的下一个同级节点。

(继承自 XPathNavigator)
MoveToNextAttribute()

当在派生类中被重写时,将 XPathNavigator 移动到下一个属性。

(继承自 XPathNavigator)
MoveToNextNamespace()

XPathNavigator 移动到下一个命名空间节点。

(继承自 XPathNavigator)
MoveToNextNamespace(XPathNamespaceScope)

当在派生类中被重写时,将 XPathNavigator 移动到与指定的 XPathNamespaceScope 匹配的下一个命名空间节点。

(继承自 XPathNavigator)
MoveToParent()

当在派生类中被重写时,将 XPathNavigator 移动到当前节点的父节点。

(继承自 XPathNavigator)
MoveToPrevious()

当在派生类中被重写时,将 XPathNavigator 移动到当前节点的上一个同级节点。

(继承自 XPathNavigator)
MoveToRoot()

XPathNavigator 移动到当前节点所属的根节点。

(继承自 XPathNavigator)
PrependChild()

返回一个 XmlWriter 对象,该对象用于在当前节点的子节点列表的开始处创建一个新的子节点。

(继承自 XPathNavigator)
PrependChild(String)

使用指定的 XML 字符串在当前节点的子节点列表的开始处创建一个新的子节点。

(继承自 XPathNavigator)
PrependChild(XmlReader)

使用指定的 XmlReader 对象的 XML 内容,在当前节点的子节点列表的开始处创建一个新的子节点。

(继承自 XPathNavigator)
PrependChild(XPathNavigator)

使用指定的 XPathNavigator 对象中的节点在当前节点的子节点列表的开始处创建一个新的子节点。

(继承自 XPathNavigator)
PrependChildElement(String, String, String, String)

使用通过指定值指定的命名空间前缀、本地名称和命名空间 URI 在当前节点的子节点列表的开始处创建一个新的子元素。

(继承自 XPathNavigator)
ReadSubtree()

返回一个 XmlReader 对象,该对象包含当前节点及其子节点。

(继承自 XPathNavigator)
ReplaceRange(XPathNavigator)

替换从当前节点到指定节点之间的一组同级节点。

(继承自 XPathNavigator)
ReplaceSelf(String)

将当前节点替换为指定的字符串内容。

(继承自 XPathNavigator)
ReplaceSelf(XmlReader)

将当前节点替换为指定的 XmlReader 对象的内容。

(继承自 XPathNavigator)
ReplaceSelf(XPathNavigator)

将当前节点替换为指定的 XPathNavigator 对象的内容。

(继承自 XPathNavigator)
Select(String)

使用指定的 XPath 表达式选择节点集。

(继承自 XPathNavigator)
Select(String, IXmlNamespaceResolver)

通过指定的 IXmlNamespaceResolver 对象使用指定的 XPath 表达式来选择节点集,以解析命名空间前缀。

(继承自 XPathNavigator)
Select(XPathExpression)

使用指定的 XPathExpression 来选择节点集。

(继承自 XPathNavigator)
SelectAncestors(String, String, Boolean)

选择当前节点中具有指定的本地名称和命名空间 URI 的所有上级节点。

(继承自 XPathNavigator)
SelectAncestors(XPathNodeType, Boolean)

选择当前节点中具有匹配的 XPathNodeType 的所有上级节点。

(继承自 XPathNavigator)
SelectChildren(String, String)

选择当前节点中具有指定的本地名称和命名空间 URI 的所有子节点。

(继承自 XPathNavigator)
SelectChildren(XPathNodeType)

选择当前节点中具有匹配的 XPathNodeType 的所有子节点。

(继承自 XPathNavigator)
SelectDescendants(String, String, Boolean)

选择当前节点中具有指定的本地名称和命名空间 URI 的所有子代节点。

(继承自 XPathNavigator)
SelectDescendants(XPathNodeType, Boolean)

选择当前节点中具有匹配的 XPathNodeType 的所有子代节点。

(继承自 XPathNavigator)
SelectSingleNode(String)

使用指定的 XPath 查询选择 XPathNavigator 中的单个节点。

(继承自 XPathNavigator)
SelectSingleNode(String, IXmlNamespaceResolver)

通过指定的 XPathNavigator 对象使用指定的 XPath 查询在 IXmlNamespaceResolver 中选择单个节点,以解析命名空间前缀。

(继承自 XPathNavigator)
SelectSingleNode(XPathExpression)

使用指定的 XPathNavigator 对象在 XPathExpression 中选择单个节点。

(继承自 XPathNavigator)
SetTypedValue(Object)

设置当前节点的类型化值。

(继承自 XPathNavigator)
SetValue(String)

设置当前节点的值。

(继承自 XPathNavigator)
ToString()

获取当前节点的文本值。

(继承自 XPathNavigator)
ValueAs(Type)

按照指定的类型返回该项的值。

(继承自 XPathItem)
ValueAs(Type, IXmlNamespaceResolver)

获取当前节点的指定 Type 形式的值,以使用指定的 IXmlNamespaceResolver 对象解析命名空间前缀。

(继承自 XPathNavigator)
WriteSubtree(XmlWriter)

将当前节点及其子节点流式传输到指定的 XmlWriter 对象。

(继承自 XPathNavigator)

显式接口实现

ICloneable.Clone()

创建 XPathNavigator 对象的新副本。

(继承自 XPathNavigator)

适用于