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 Data Model.

Объект 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 для текущего узла.

XmlType

Переопределяемый в производных классах возвращает значение XmlSchemaType для элемента.

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

Методы

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)

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

Evaluate(String, IXmlNamespaceResolver)

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

Evaluate(XPathExpression)

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

Evaluate(XPathExpression, XPathNodeIterator)

Использует предоставленный контекст для вычисления 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 к элементу с указанным локальным именем и URI пространства имен в порядке документа.

MoveToFollowing(String, String, XPathNavigator)

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

MoveToFollowing(XPathNodeType)

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

MoveToFollowing(XPathNodeType, XPathNavigator)

Перемещает 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)

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

Select(String, IXmlNamespaceResolver)

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

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)

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

SelectSingleNode(String, IXmlNamespaceResolver)

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

SelectSingleNode(XPathExpression)

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

SetTypedValue(Object)

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

SetValue(String)

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

ToString()

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

ValueAs(Type)

Возвращает значение элемента с заданным типом.

(Унаследовано от XPathItem)
ValueAs(Type, IXmlNamespaceResolver)

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

WriteSubtree(XmlWriter)

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

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

ICloneable.Clone()

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

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

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