Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Ruft einen Wert ab, der angibt, ob der aktuelle Knoten ein leeres Element ist (z. B. <MyElement/>).
Namespace: System.Xml
Assembly: System.Xml (in system.xml.dll)
Syntax
'Declaration
Public Overrides ReadOnly Property IsEmptyElement As Boolean
'Usage
Dim instance As XmlValidatingReader
Dim value As Boolean
value = instance.IsEmptyElement
public override bool IsEmptyElement { get; }
public:
virtual property bool IsEmptyElement {
bool get () override;
}
/** @property */
public boolean get_IsEmptyElement ()
public override function get IsEmptyElement () : boolean
Eigenschaftenwert
true, wenn der aktuelle Knoten ein Element ist (NodeType ist gleich XmlNodeType.Element), das mit /> endet, andernfalls false.
Hinweise
Hinweis
Die XmlValidatingReader-Klasse ist in Microsoft .NET Framework, Version 2.0 veraltet. Sie können eine Instanz eines validierenden XmlReader mithilfe der XmlReaderSettings-Klasse und der Create-Methode erstellen. Weitere Informationen finden Sie unter Validieren von XML-Daten mit "XmlReader".
Mit dieser Eigenschaft können Sie den Unterschied zwischen den folgenden Elementen bestimmen:
<item num="123"/> (IsEmptyElement ist true).
<item num="123"> (IsEmptyElement ist false obwohl das Element leer ist).
Für leere Elemente wird kein entsprechender EndElement-Knoten generiert.
Wenn aufgrund einer Schemavalidierung Standardinhalt zu einem Element hinzugefügt wurde, gibt IsEmptyElement trotzdem true zurück. Es hat keine Einfluss darauf, ob das Element über einen Standardwert verfügt. Das heißt, IsEmptyElement gibt lediglich an, ob das Element im Quelldokument über ein Endtag verfügt.
Beispiel
Im folgenden Beispiel wird der Textinhalt der einzelnen Elemente angezeigt.
Imports System
Imports System.IO
Imports System.Xml
Public Class Sample
Public Shared Sub Main()
Dim txtreader As XmlTextReader = Nothing
Dim reader As XmlValidatingReader = Nothing
Try
'Implement the readers.
txtreader = New XmlTextReader("elems.xml")
reader = New XmlValidatingReader(txtreader)
'Parse the XML and display the text content of each of the elements.
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()) 'Handle nested elements.
Console.WriteLine()
Console.Write("<{0}>", reader.Name)
End If
Console.WriteLine(reader.ReadString()) 'Read the text content of the element.
End If
End If
End While
Finally
If Not (reader Is Nothing) Then
reader.Close()
End If
End Try
End Sub 'Main
End Class 'Sample
using System;
using System.IO;
using System.Xml;
public class Sample
{
public static void Main()
{
XmlTextReader txtreader = null;
XmlValidatingReader reader = null;
try
{
//Implement the readers.
txtreader = new XmlTextReader("elems.xml");
reader = new XmlValidatingReader(txtreader);
//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
#using <System.Xml.dll>
using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
XmlTextReader^ txtreader = nullptr;
XmlValidatingReader^ reader = nullptr;
try
{
//Implement the readers.
txtreader = gcnew XmlTextReader( "elems.xml" );
reader = gcnew XmlValidatingReader( txtreader );
//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 != nullptr )
reader->Close();
}
}
import System.*;
import System.IO.*;
import System.Xml.*;
public class Sample
{
public static void main(String[] args)
{
XmlTextReader txtReader = null;
XmlValidatingReader reader = null;
try {
//Implement the readers.
txtReader = new XmlTextReader("elems.xml");
reader = new XmlValidatingReader(txtReader);
//Parse the XML and display the text content of
// each of the elements.
while (reader.Read()) {
if (reader.IsStartElement()) {
if (reader.get_IsEmptyElement()) {
Console.WriteLine("<{0}/>", reader.get_Name());
}
else {
Console.Write("<{0}> ", reader.get_Name());
reader.Read(); //Read the start tag.
if (reader.IsStartElement()) {
//Handle nested elements.
Console.Write("\r\n<{0}>", reader.get_Name());
}
Console.WriteLine(reader.ReadString());
//Read the text content of the element.
}
}
}
}
finally {
if (reader != null) {
reader.Close();
}
}
} //main
} // End class Sample
Im Beispiel wird die Datei elems.xml als Eingabe verwendet.
<book>
<title>Pride And Prejudice</title>
<price>19.95</price>
<misc/>
</book>
Plattformen
Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.
Versionsinformationen
.NET Framework
Unterstützt in: 2.0, 1.1, 1.0
Siehe auch
Referenz
XmlValidatingReader-Klasse
XmlValidatingReader-Member
System.Xml-Namespace