XmlReader.Name Свойство

Определение

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

public:
 virtual property System::String ^ Name { System::String ^ get(); };
public:
 abstract property System::String ^ Name { System::String ^ get(); };
public virtual string Name { get; }
public abstract string Name { get; }
member this.Name : string
Public Overridable ReadOnly Property Name As String
Public MustOverride ReadOnly Property Name As String

Значение свойства

Полное имя текущего узла. Например, Name для bk:book элемента <bk:book>.

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

Тип узла Имя
Attribute Имя атрибута.
DocumentType Имя типа документа.
Element Имя тега.
EntityReference Имя сущности, на который ссылается ссылка.
ProcessingInstruction Целевой объект инструкции обработки.
XmlDeclaration Литеральная строка xml.

Исключения

Метод XmlReader был вызван до завершения предыдущей асинхронной операции. В этом случае InvalidOperationException создается сообщение "Асинхронная операция уже выполняется".

Примеры

В следующем примере считывается XML-файл и отображаются все узлы.

XmlReaderSettings settings = new XmlReaderSettings();
settings.DtdProcessing = DtdProcessing.Parse;
XmlReader reader = XmlReader.Create("items.xml", settings);

reader.MoveToContent();
  // Parse the file and display each of the nodes.
  while (reader.Read()) {
    switch (reader.NodeType) {
      case XmlNodeType.Element:
          Console.Write("<{0}>", reader.Name);
          break;
      case XmlNodeType.Text:
          Console.Write(reader.Value);
          break;
       case XmlNodeType.CDATA:
           Console.Write("<![CDATA[{0}]]>", reader.Value);
           break;
       case XmlNodeType.ProcessingInstruction:
           Console.Write("<?{0} {1}?>", reader.Name, reader.Value);
           break;
       case XmlNodeType.Comment:
           Console.Write("<!--{0}-->", reader.Value);
           break;
       case XmlNodeType.XmlDeclaration:
           Console.Write("<?xml version='1.0'?>");
           break;
       case XmlNodeType.Document:
           break;
       case XmlNodeType.DocumentType:
           Console.Write("<!DOCTYPE {0} [{1}]", reader.Name, reader.Value);
           break;
       case XmlNodeType.EntityReference:
           Console.Write(reader.Name);
           break;
       case XmlNodeType.EndElement:
           Console.Write("</{0}>", reader.Name);
           break;
   }
}

/*
    The example displays the following output:

    <Item>Test with an entity: 123</Item><Item>Test with a child element <more> stuff</Item>
    <Item>Test with a CDATA section <![CDATA[<456>]]> def</Item><Item>Test with a char entity: A</Item>
    <!-- Fourteen chars in this element.--><Item>1234567890ABCD</Item></Items>
*/
Dim settings As New XmlReaderSettings()
settings.DtdProcessing = DtdProcessing.Parse
Dim reader As XmlReader = XmlReader.Create("items.xml", settings)
reader.MoveToContent()
' Parse the file and display each of the nodes.
While reader.Read()
  Select Case reader.NodeType
    Case XmlNodeType.Element
      Console.Write("<{0}>", reader.Name)
    Case XmlNodeType.Text
      Console.Write(reader.Value)
    Case XmlNodeType.CDATA
      Console.Write("<![CDATA[{0}]]>", reader.Value)
    Case XmlNodeType.ProcessingInstruction
      Console.Write("<?{0} {1}?>", reader.Name, reader.Value)
    Case XmlNodeType.Comment
      Console.Write("<!--{0}-->", reader.Value)
    Case XmlNodeType.XmlDeclaration
      Console.Write("<?xml version='1.0'?>")
    Case XmlNodeType.Document
    Case XmlNodeType.DocumentType
      Console.Write("<!DOCTYPE {0} [{1}]", reader.Name, reader.Value)
    Case XmlNodeType.EntityReference
      Console.Write(reader.Name)
    Case XmlNodeType.EndElement
      Console.Write("</{0}>", reader.Name)
  End Select
End While

' The example displays the following output:
'
' <Item>Test with an entity: 123</Item><Item>Test with a child element <more> stuff</Item>
' <Item>Test with a CDATA section <![CDATA[<456>]]> def</Item><Item>Test with a char entity: A</Item>
' <!-- Fourteen chars in this element.--><Item>1234567890ABCD</Item></Items>

В примере используется items.xml файл.

<?xml version="1.0"?>
<!-- This is a sample XML document -->
<!DOCTYPE Items [<!ENTITY number "123">]>
<Items>
  <Item>Test with an entity: &number;</Item>
  <Item>Test with a child element <more/> stuff</Item>
  <Item>Test with a CDATA section <![CDATA[<456>]]> def</Item>
  <Item>Test with a char entity: A</Item>
  <!-- Fourteen chars in this element.-->
  <Item>1234567890ABCD</Item>
</Items>

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

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