XmlReader.IsEmptyElement Proprietà
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
In caso di override in una classe derivata, ottiene un valore che indica se il nodo corrente è un elemento vuoto , ad esempio <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 XmlNodeType.Elementa ) che termina con />; in caso contrario, false.
Eccezioni
È stato chiamato un XmlReader metodo prima del completamento di un'operazione asincrona precedente. In questo caso, InvalidOperationException viene generata con il messaggio "Un'operazione asincrona è già in corso".
Esempio
Nell'esempio seguente viene visualizzato il contenuto di testo di ogni elemento.
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
Nell'esempio viene usato il file , elems.xml, come input.
<book>
<title>Pride And Prejudice</title>
<price>19.95</price>
<misc/>
</book>
Commenti
Questa proprietà consente di determinare la differenza tra quanto segue:
<item num="123"/> (IsEmptyElement è true).
<item num="123"></item> (IsEmptyElement è false, anche se il contenuto dell'elemento è vuoto).
Un nodo corrispondente EndElement non viene generato per gli elementi vuoti.
Se il contenuto predefinito è stato aggiunto a un elemento a causa della convalida dello schema, IsEmptyElement restituisce truecomunque . Non ha alcun effetto sul fatto che l'elemento abbia o meno un valore predefinito. In altre parole, IsEmptyElement indica semplicemente se l'elemento nel documento di origine ha un tag di elemento finale.