XmlReader.IsEmptyElement Właściwość
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Po zastąpieniu w klasie pochodnej pobiera wartość wskazującą, czy bieżący węzeł jest pustym elementem (na przykład <MyElement/>
).
public:
abstract property bool IsEmptyElement { bool get(); };
public abstract bool IsEmptyElement { get; }
member this.IsEmptyElement : bool
Public MustOverride ReadOnly Property IsEmptyElement As Boolean
Wartość właściwości
true
jeśli bieżący węzeł jest elementem (NodeType równym XmlNodeType.Element
), który kończy się wartością />
; w przeciwnym razie false
.
Wyjątki
Metoda XmlReader została wywołana przed zakończeniem poprzedniej operacji asynchronicznej. W tym przypadku InvalidOperationException jest zgłaszany komunikat "Operacja asynchroniczna jest już w toku".
Przykłady
W poniższym przykładzie jest wyświetlana zawartość tekstowa każdego elementu.
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
W przykładzie użyto pliku , elems.xml
jako danych wejściowych.
<book>
<title>Pride And Prejudice</title>
<price>19.95</price>
<misc/>
</book>
Uwagi
Ta właściwość umożliwia określenie różnicy między następującymi elementami:
<item num="123"/>
(IsEmptyElement
to true
).
<item num="123"></item>
(IsEmptyElement
to false
, chociaż zawartość elementu jest pusta).
Odpowiedni EndElement
węzeł nie jest generowany dla pustych elementów.
Jeśli domyślna zawartość została dodana do elementu z powodu weryfikacji schematu, IsEmptyElement
nadal zwraca wartość true
. Nie ma wpływu na to, czy element ma wartość domyślną. Innymi słowy, po prostu zgłasza, IsEmptyElement
czy element w dokumencie źródłowym ma tag elementu końcowego.