XmlReader.IsEmptyElement XmlReader.IsEmptyElement XmlReader.IsEmptyElement XmlReader.IsEmptyElement Property

Definizione

Quando viene eseguito l'override in una classe derivata, ottiene un valore che indica se il nodo corrente è un elemento vuoto, ad esempio <MyElement/>.When overridden in a derived class, gets a value indicating whether the current node is an empty element (for example, <MyElement/>).

public:
 abstract property bool IsEmptyElement { bool get(); };
public abstract bool IsEmptyElement { get; }
member this.IsEmptyElement : bool
Public MustOverride ReadOnly Property IsEmptyElement As Boolean

Valore della proprietà

true Se il nodo corrente è un elemento (NodeType è uguale a XmlNodeType.Element) che termina con / >; in caso contrario, false.true if the current node is an element (NodeType equals XmlNodeType.Element) that ends with />; otherwise, false.

Eccezioni

È stato chiamato un metodo della classe XmlReader prima del completamento di un'operazione asincrona precedente.An XmlReader method was called before a previous asynchronous operation finished. In questo caso, viene generata l'eccezione InvalidOperationException con il messaggio "È già in corso un'operazione asincrona".In this case, InvalidOperationException is thrown with the message "An asynchronous operation is already in progress."

Esempi

Nell'esempio seguente consente di visualizzare il contenuto di testo di ogni elemento.The following example displays the text content of each element.

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.
    }
  } 
} 
While reader.Read()
  If reader.IsStartElement() Then
    If reader.IsEmptyElement Then
      Console.WriteLine("<{0}/>", reader.Name)
    Else
      Console.Write("<{0}> ", reader.Name)
      reader.Read() ' Read the start tag.
      If reader.IsStartElement() Then ' Handle nested elements.
        Console.Write(vbCr + vbLf + "<{0}>", reader.Name)
      End If
      Console.WriteLine(reader.ReadString()) 'Read the text content of the element.
    End If
  End If
End While

L'esempio Usa il file, elems.xml, come input.The example uses the file, elems.xml, as input.

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

Commenti

Questa proprietà consente di determinare la differenza tra le seguenti stringhe:This property enables you to determine the difference between the following:

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

<item num="123"></item> (IsEmptyElement è false, anche se il contenuto dell'elemento è vuoto).<item num="123"></item> (IsEmptyElement is false, although element content is empty).

Un oggetto corrispondente EndElement nodo non viene generato per elementi vuoti.A corresponding EndElement node is not generated for empty elements.

Se il contenuto predefinito è stato aggiunto a un elemento a causa di convalida dello schema, IsEmptyElement restituisce ancora true.If default content has been added to an element due to schema validation, IsEmptyElement still returns true. Non ha alcun impatto su o meno l'elemento ha un valore predefinito.It has no bearing on whether or not the element has a default value. In altre parole, IsEmptyElement indica semplicemente se l'elemento nel documento di origine dispone di un tag di fine dell'elemento.In other words, IsEmptyElement simply reports whether or not the element in the source document had an end element tag.

Si applica a