XmlReader.IsEmptyElement Propriété
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
En cas de substitution dans une classe dérivée, obtient une valeur indiquant si le nœud actuel est un élément vide (par exemple). <MyElement/>
public:
abstract property bool IsEmptyElement { bool get(); };
public abstract bool IsEmptyElement { get; }
member this.IsEmptyElement : bool
Public MustOverride ReadOnly Property IsEmptyElement As Boolean
Valeur de propriété
true si le nœud actuel est un élément (NodeType égal XmlNodeType.Elementà ) qui se termine />par ; sinon, false.
Exceptions
Une XmlReader méthode a été appelée avant la fin d’une opération asynchrone précédente. Dans ce cas, InvalidOperationException est levée avec le message « Une opération asynchrone est déjà en cours ».
Exemples
L’exemple suivant affiche le contenu texte de chaque élément.
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’exemple utilise le fichier, elems.xmlcomme entrée.
<book>
<title>Pride And Prejudice</title>
<price>19.95</price>
<misc/>
</book>
Remarques
Cette propriété vous permet de déterminer la différence entre les éléments suivants :
<item num="123"/> (IsEmptyElement est true).
<item num="123"></item> (IsEmptyElement est false, bien que le contenu de l’élément soit vide).
Un nœud correspondant EndElement n’est pas généré pour les éléments vides.
Si le contenu par défaut a été ajouté à un élément en raison de la validation du schéma, IsEmptyElement retourne truetoujours . Elle n’a aucune incidence sur l’absence ou non de la valeur par défaut de l’élément. En d’autres termes, IsEmptyElement il indique simplement si l’élément du document source avait une balise d’élément de fin.