XText.NodeType Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает тип узла для этого узла.
public:
virtual property System::Xml::XmlNodeType NodeType { System::Xml::XmlNodeType get(); };
public override System.Xml.XmlNodeType NodeType { get; }
member this.NodeType : System.Xml.XmlNodeType
Public Overrides ReadOnly Property NodeType As XmlNodeType
Значение свойства
Тип узла. Для объектов XText это значение равно Text.
Примеры
В следующем примере создается XML-дерево, содержащее несколько типов узлов. Затем он выполняет итерацию по дереву, выводя тип узла каждого узла.
Обратите внимание, что Child2
содержит XText узел, неявно преобразованный из содержимого строки.
// Note that XNode uses XmlNodeType, which is in the System.Xml namespace.
XDocument xmlTree = new XDocument(
new XComment("a comment"),
new XProcessingInstruction("xml-stylesheet", "type=\"text/xsl\" href=\"hello.xsl\""),
new XElement("Root",
new XAttribute("Att", "attContent"),
new XElement("Child1",
new XCData("CDATA content")
),
new XElement("Child2", "Text content")
)
);
foreach (XNode node in xmlTree.DescendantNodes())
{
Console.WriteLine(node.NodeType);
if (node.NodeType == XmlNodeType.Element)
{
foreach (XAttribute att in ((XElement)node).Attributes())
Console.WriteLine(att.NodeType);
}
}
' Note that XNode uses XmlNodeType, which is in the System.Xml namespace.
Dim xmlTree As XDocument = _
<?xml version='1.0'?>
<!-- a comment -->
<?xml-stylesheet type='text/xsl' href='hello.xsl'?>
<Root Att="attContent">
<Child1>
<![CDATA[CDATA content]]>
</Child1>
<Child2>Text content</Child2>
</Root>
For Each node As XNode In xmlTree.DescendantNodes
Console.WriteLine(node.NodeType.ToString())
If node.NodeType = XmlNodeType.Element Then
For Each att In DirectCast(node, XElement).Attributes
Console.WriteLine(att.NodeType.ToString())
Next
End If
Next
В этом примере выводятся следующие данные:
Comment
ProcessingInstruction
Element
Attribute
Element
CDATA
Element
Text
Комментарии
Так как все классы, производные от , XObject содержат NodeType свойство , можно написать код, который работает с коллекциями конкретного подкласса XObject. Затем код может проверить тип узла каждого узла в коллекции.