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


XPathNavigator Класс

Определение

Предоставляет модель курсора для навигации и редактирования XML-данных.

public ref class XPathNavigator abstract : System::Xml::XPath::XPathItem, ICloneable, System::Xml::IXmlNamespaceResolver, System::Xml::XPath::IXPathNavigable
public ref class XPathNavigator abstract : System::Xml::XPath::XPathItem, System::Xml::IXmlNamespaceResolver, System::Xml::XPath::IXPathNavigable
public ref class XPathNavigator abstract : ICloneable
public abstract class XPathNavigator : System.Xml.XPath.XPathItem, ICloneable, System.Xml.IXmlNamespaceResolver, System.Xml.XPath.IXPathNavigable
public abstract class XPathNavigator : System.Xml.XPath.XPathItem, System.Xml.IXmlNamespaceResolver, System.Xml.XPath.IXPathNavigable
public abstract class XPathNavigator : ICloneable
type XPathNavigator = class
    inherit XPathItem
    interface ICloneable
    interface IXmlNamespaceResolver
    interface IXPathNavigable
type XPathNavigator = class
    inherit XPathItem
    interface IXmlNamespaceResolver
    interface IXPathNavigable
type XPathNavigator = class
    interface ICloneable
type XPathNavigator = class
    inherit XPathItem
    interface ICloneable
    interface IXPathNavigable
    interface IXmlNamespaceResolver
Public MustInherit Class XPathNavigator
Inherits XPathItem
Implements ICloneable, IXmlNamespaceResolver, IXPathNavigable
Public MustInherit Class XPathNavigator
Inherits XPathItem
Implements IXmlNamespaceResolver, IXPathNavigable
Public MustInherit Class XPathNavigator
Implements ICloneable
Наследование
XPathNavigator
Наследование
XPathNavigator
Производный
Реализации

Комментарии

Класс XPathNavigator в System.Xml.XPath пространстве имен — это абстрактный класс, определяющий модель курсора для навигации и редактирования элементов XML-информации в качестве экземпляров модели данных XQuery 1.0 и XPath 2.0.

Объект XPathNavigator создается из класса, реализующего IXPathNavigable интерфейс, например XPathDocument классы и XmlDocument классы. XPathNavigator объекты, созданные XPathDocument объектами, доступны только для чтения, а XPathNavigator объекты, созданные XmlDocument объектами, могут быть изменены. XPathNavigator Состояние объекта только для чтения или редактирования определяется с помощью CanEdit свойства XPathNavigator класса.

Дополнительные сведения об обработке XML-данных с помощью модели данных XPath см. в разделе " Обработка XML-данных с помощью модели данных XPath ".

Это важно

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

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

При наследовании от XPathNavigator класса необходимо переопределить следующие элементы:

Конструкторы

Имя Описание
XPathNavigator()

Инициализирует новый экземпляр класса XPathNavigator.

Свойства

Имя Описание
BaseURI

При переопределении в производном классе получает базовый универсальный код ресурса (URI) для текущего узла.

CanEdit

Возвращает значение, указывающее, может ли XPathNavigator изменить базовые XML-данные.

HasAttributes

Возвращает значение, указывающее, имеет ли текущий узел какие-либо атрибуты.

HasChildren

Возвращает значение, указывающее, имеет ли текущий узел дочерние узлы.

InnerXml

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

IsEmptyElement

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

IsNode

Возвращает значение, указывающее, представляет ли текущий узел XPath.

LocalName

При переопределении в производном классе получает Name текущий узел без префикса пространства имен.

Name

При переопределении в производном классе получает полное имя текущего узла.

NamespaceURI

При переопределении в производном классе получает URI пространства имен текущего узла.

NameTable

При переопределении в производном классе получает XmlNameTable значение XPathNavigator.

NavigatorComparer

IEqualityComparer Получает использование для сравнения XPathNavigator равенства объектов.

NodeType

При переопределении в производном классе получает XPathNodeType текущий узел.

OuterXml

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

Prefix

При переопределении в производном классе получает префикс пространства имен, связанный с текущим узлом.

SchemaInfo

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

TypedValue

Возвращает текущий узел в качестве прямоугольного объекта наиболее подходящего типа .NET.

UnderlyingObject

XPathNavigator Используется реализациями, предоставляя "виртуализированное" представление XML в хранилище для предоставления доступа к базовым объектам.

Value

При переопределении в производном классе получает строковое значение элемента.

Value

При переопределении в производном классе получает string значение элемента.

(Унаследовано от XPathItem)
ValueAsBoolean

Возвращает значение текущего узла в виде Boolean.

ValueAsDateTime

Возвращает значение текущего узла в виде DateTime.

ValueAsDouble

Возвращает значение текущего узла в виде Double.

ValueAsInt

Возвращает значение текущего узла в качестве Int32значения.

ValueAsLong

Возвращает значение текущего узла в качестве Int64значения.

ValueType

Возвращает .NET Type текущего узла.

XmlLang

xml:lang Возвращает область для текущего узла.

XmlType

XmlSchemaType Возвращает сведения для текущего узла.

Методы

Имя Описание
AppendChild()

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

AppendChild(String)

Создает новый дочерний узел в конце списка дочерних узлов текущего узла с помощью указанной строки данных XML.

AppendChild(XmlReader)

Создает новый дочерний узел в конце списка дочерних узлов текущего узла с использованием XML-содержимого указанного XmlReader объекта.

AppendChild(XPathNavigator)

Создает новый дочерний узел в конце списка дочерних узлов текущего узла с помощью указанных XPathNavigator узлов.

AppendChildElement(String, String, String, String)

Создает новый дочерний узел элемента в конце списка дочерних узлов текущего узла с помощью префикса пространства имен, локального имени и URI пространства имен, указанного с указанным значением.

CheckValidity(XmlSchemaSet, ValidationEventHandler)

Проверяет, соответствуют ли XML-данные в XPathNavigator соответствии с предоставленной схемой языка определения xml (XSD).

Clone()

При переопределении в производном классе создает новое XPathNavigator расположение на том же узле, что и в этом XPathNavigatorслучае.

ComparePosition(XPathNavigator)

Сравнивает позицию текущего XPathNavigator с указанной XPathNavigator позицией.

Compile(String)

Компилирует строку, представляющую выражение XPath, и возвращает XPathExpression объект.

CreateAttribute(String, String, String, String)

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

CreateAttributes()

Возвращает объект, используемый XmlWriter для создания новых атрибутов в текущем элементе.

CreateNavigator()

Возвращает копию XPathNavigator.

DeleteRange(XPathNavigator)

Удаляет диапазон одноуровневых узлов из текущего узла в указанный узел.

DeleteSelf()

Удаляет текущий узел и его дочерние узлы.

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
Evaluate(String, IXmlNamespaceResolver)

Вычисляет указанное выражение XPath и возвращает типизированный результат, используя IXmlNamespaceResolver объект, указанный для разрешения префиксов пространства имен в выражении XPath.

Evaluate(String)

Вычисляет указанное выражение XPath и возвращает типизированный результат.

Evaluate(XPathExpression, XPathNodeIterator)

Использует предоставленный контекст для вычисления XPathExpressionи возвращает типизированный результат.

Evaluate(XPathExpression)

Вычисляет XPathExpression и возвращает типизированный результат.

GetAttribute(String, String)

Возвращает значение атрибута с указанным локальным именем и URI пространства имен.

GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetNamespace(String)

Возвращает значение узла пространства имен, соответствующего указанному локальному имени.

GetNamespacesInScope(XmlNamespaceScope)

Возвращает пространства имен в области текущего узла.

GetType()

Возвращает Type текущего экземпляра.

(Унаследовано от Object)
InsertAfter()

Возвращает объект, используемый XmlWriter для создания нового одноуровневого узла после выбранного в данный момент узла.

InsertAfter(String)

Создает новый одноуровневый узел после выбранного в данный момент узла с помощью указанной xml-строки.

InsertAfter(XmlReader)

Создает новый одноуровневый узел после выбранного в данный момент узла с использованием XML-содержимого указанного XmlReader объекта.

InsertAfter(XPathNavigator)

Создает новый одноуровневый узел после выбранного в данный момент узла с помощью узлов в указанном объекте XPathNavigator .

InsertBefore()

Возвращает объект, используемый XmlWriter для создания нового одноуровневого узла перед выбранным в данный момент узлом.

InsertBefore(String)

Создает новый одноуровневый узел перед выбранным в данный момент узлом с помощью указанной XML-строки.

InsertBefore(XmlReader)

Создает новый одноуровневый узел перед выбранным в данный момент узлом с использованием XML-содержимого указанного XmlReader объекта.

InsertBefore(XPathNavigator)

Создает новый одноуровневый узел перед выбранным в данный момент узлом с помощью указанных XPathNavigator узлов.

InsertElementAfter(String, String, String, String)

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

InsertElementBefore(String, String, String, String)

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

IsDescendant(XPathNavigator)

Определяет, является ли указанный XPathNavigator потомком текущего XPathNavigator.

IsSamePosition(XPathNavigator)

При переопределении в производном классе определяет, находится ли текущий XPathNavigator в той же позиции, что и указанный XPathNavigator.

LookupNamespace(String)

Возвращает универсальный код ресурса (URI) пространства имен для указанного префикса.

LookupPrefix(String)

Возвращает префикс, объявленный для указанного URI пространства имен.

Matches(String)

Определяет, соответствует ли текущий узел указанному выражению XPath.

Matches(XPathExpression)

Определяет, соответствует ли текущий узел указанному.XPathExpression

MemberwiseClone()

Создает неглубокую копию текущей Object.

(Унаследовано от Object)
MoveTo(XPathNavigator)

При переопределении в производном классе перемещается XPathNavigator в ту же позицию, что и указанный XPathNavigator.

MoveToAttribute(String, String)

XPathNavigator Перемещает атрибут с соответствующим локальным именем и URI пространства имен.

MoveToChild(String, String)

XPathNavigator Перемещает дочерний узел с указанным локальным именем и URI пространства имен.

MoveToChild(XPathNodeType)

XPathNavigator Перемещает дочерний узел указанногоXPathNodeType.

MoveToFirst()

Перемещает XPathNavigator к первому узлу-сиблингу текущего узла.

MoveToFirstAttribute()

При переопределении в производном классе перемещает XPathNavigator первый атрибут текущего узла.

MoveToFirstChild()

При переопределении в производном классе перемещается XPathNavigator на первый дочерний узел текущего узла.

MoveToFirstNamespace()

XPathNavigator Перемещает узел первого пространства имен текущего узла.

MoveToFirstNamespace(XPathNamespaceScope)

При переопределении в производном классе перемещается XPathNavigator на первый узел пространства имен, соответствующий указанному XPathNamespaceScope .

MoveToFollowing(String, String, XPathNavigator)

XPathNavigator Перемещает элемент с заданным локальным именем и URI пространства имен в указанный границу в порядке документа.

MoveToFollowing(String, String)

XPathNavigator Перемещает элемент с локальным именем и URI пространства имен, указанным в порядке документа.

MoveToFollowing(XPathNodeType, XPathNavigator)

XPathNavigator Перемещает следующий элемент указанного XPathNodeType объекта в указанный границу в порядке документа.

MoveToFollowing(XPathNodeType)

Перемещает следующий XPathNavigator элемент указанного XPathNodeType в порядке документа.

MoveToId(String)

При переопределении в производном классе перемещается на узел с атрибутом типа ID , значение которого соответствует указанному String.

MoveToNamespace(String)

XPathNavigator Перемещает узел пространства имен с указанным префиксом пространства имен.

MoveToNext()

При переопределении в производном классе перемещается XPathNavigator к следующему одноуровневой узлу текущего узла.

MoveToNext(String, String)

Перемещает узел XPathNavigator следующего брата с указанным локальным именем и URI пространства имен.

MoveToNext(XPathNodeType)

Перемещает следующий одноуровневый XPathNavigator узел текущего узла, соответствующий указанному XPathNodeType .

MoveToNextAttribute()

При переопределении в производном классе перемещается XPathNavigator к следующему атрибуту.

MoveToNextNamespace()

XPathNavigator Перемещает узел следующего пространства имен.

MoveToNextNamespace(XPathNamespaceScope)

При переопределении в производном классе перемещается XPathNavigator на следующий узел пространства имен, соответствующий указанному XPathNamespaceScope .

MoveToParent()

При переопределении в производном классе перемещается XPathNavigator на родительский узел текущего узла.

MoveToPrevious()

При переопределении в производном классе перемещается XPathNavigator на предыдущий одноуровневый узел текущего узла.

MoveToRoot()

XPathNavigator Перемещает корневой узел, к которому принадлежит текущий узел.

PrependChild()

Возвращает объект, используемый XmlWriter для создания нового дочернего узла в начале списка дочерних узлов текущего узла.

PrependChild(String)

Создает новый дочерний узел в начале списка дочерних узлов текущего узла с помощью указанной xml-строки.

PrependChild(XmlReader)

Создает новый дочерний узел в начале списка дочерних узлов текущего узла с использованием XML-содержимого указанного XmlReader объекта.

PrependChild(XPathNavigator)

Создает новый дочерний узел в начале списка дочерних узлов текущего узла, используя узлы в указанном объекте XPathNavigator .

PrependChildElement(String, String, String, String)

Создает новый дочерний элемент в начале списка дочерних узлов текущего узла с помощью префикса пространства имен, локального имени и URI пространства имен, указанного с указанным значением.

ReadSubtree()

Возвращает объект, содержащий текущий XmlReader узел и его дочерние узлы.

ReplaceRange(XPathNavigator)

Заменяет диапазон одноуровневых узлов с текущего узла на указанный узел.

ReplaceSelf(String)

Заменяет текущий узел содержимым указанной строки.

ReplaceSelf(XmlReader)

Заменяет текущий узел содержимым указанного XmlReader объекта.

ReplaceSelf(XPathNavigator)

Заменяет текущий узел содержимым указанного XPathNavigator объекта.

Select(String, IXmlNamespaceResolver)

Выбирает набор узлов с помощью указанного IXmlNamespaceResolver выражения XPath с объектом, указанным для разрешения префиксов пространства имен.

Select(String)

Выбирает набор узлов, используя указанное выражение XPath.

Select(XPathExpression)

Выбирает набор узлов с помощью указанного XPathExpression.

SelectAncestors(String, String, Boolean)

Выбирает все узлы-предки текущего узла с указанным локальным именем и URI пространства имен.

SelectAncestors(XPathNodeType, Boolean)

Выбирает все узлы-предки текущего узла, которые имеют соответствующее значение XPathNodeType.

SelectChildren(String, String)

Выбирает все дочерние узлы текущего узла с указанным локальным именем и URI пространства имен.

SelectChildren(XPathNodeType)

Выбирает все дочерние узлы текущего узла с соответствующими XPathNodeType.

SelectDescendants(String, String, Boolean)

Выбирает все узлы-потомки текущего узла с указанным локальным именем и URI пространства имен.

SelectDescendants(XPathNodeType, Boolean)

Выбирает все узлы-потомки текущего узла, которые имеют соответствующее XPathNodeTypeзначение.

SelectSingleNode(String, IXmlNamespaceResolver)

Выбирает один узел в XPathNavigator объекте с помощью указанного запроса XPath с IXmlNamespaceResolver объектом, указанным для разрешения префиксов пространства имен.

SelectSingleNode(String)

Выбирает один узел в XPathNavigator указанном запросе XPath.

SelectSingleNode(XPathExpression)

Выбирает один узел в XPathNavigator указанном XPathExpression объекте.

SetTypedValue(Object)

Задает типизированное значение текущего узла.

SetValue(String)

Задает значение текущего узла.

ToString()

Возвращает текстовое значение текущего узла.

ValueAs(Type, IXmlNamespaceResolver)

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

ValueAs(Type)

Возвращает значение элемента в качестве указанного типа.

(Унаследовано от XPathItem)
WriteSubtree(XmlWriter)

Выполняет потоковую передачу текущего узла и дочерних узлов в указанный XmlWriter объект.

Явные реализации интерфейса

Имя Описание
ICloneable.Clone()

Создает новую копию XPathNavigator объекта.

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

См. также раздел