XmlTextReader.IsEmptyElement Propriedade

Definição

Obtém um valor que indica se o nó atual é um elemento vazio (por exemplo, <MyElement/>).

public override bool IsEmptyElement { get; }

Valor da propriedade

true se o nó atual for um elemento (NodeType igual a XmlNodeType.Element) que terminará com />; caso contrário, false.

Exemplos

O exemplo a seguir exibe o conteúdo de texto de cada elemento.

using System;
using System.IO;
using System.Xml;

public class Sample
{
  public static void Main()
  {
    XmlTextReader reader = null;

    try
    {
       //Load the reader with the XML file.
       reader = new XmlTextReader("elems.xml");

       //Parse the XML and display the text content of each of the elements.
       while (reader.Read()){
         if (reader.IsStartElement()){
           if (reader.IsEmptyElement)
                    {
                        Console.WriteLine("<{0}/>", reader.Name);
                    }
                    else
                    {
               Console.Write("<{0}> ", reader.Name);
               reader.Read(); //Read the start tag.
               if (reader.IsStartElement())  //Handle nested elements.
                 Console.Write("\r\n<{0}>", reader.Name);
               Console.WriteLine(reader.ReadString());  //Read the text content of the element.
           }
         }
       }
     }

     finally
     {
        if (reader != null)
          reader.Close();
      }
  }
} // End class

O exemplo usa o arquivo , elems.xmlcomo entrada.


<book>
  <title>Pride And Prejudice</title>
  <price>19.95</price>
  <misc/>
</book>

Comentários

Observação

A partir do .NET Framework 2.0, recomendamos que você crie XmlReader instâncias usando o XmlReader.Create método para aproveitar a nova funcionalidade.

Essa propriedade permite determinar a diferença entre o seguinte:

<item num="123"/> (IsEmptyElement é true).

<item num="123"> (IsEmptyElement é false, embora o conteúdo do elemento esteja vazio).

Um nó correspondente EndElement não é gerado para elementos vazios.

IsEmptyElement simplesmente relata se o elemento no documento de origem tinha ou não uma marca de elemento final.

Aplica-se a

Produto Versões
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

Confira também