XmlReader.IsEmptyElement Özellik
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Türetilmiş bir sınıfta geçersiz kılındığında, geçerli düğümün boş bir öğe olup olmadığını belirten bir değer alır (örneğin, <MyElement/>).
public:
abstract property bool IsEmptyElement { bool get(); };
public abstract bool IsEmptyElement { get; }
member this.IsEmptyElement : bool
Public MustOverride ReadOnly Property IsEmptyElement As Boolean
Özellik Değeri
truegeçerli düğüm ile NodeTypebiten bir öğeyse (XmlNodeType.Element eşittir />), değilse, false.
Özel durumlar
Önceki XmlReader bir zaman uyumsuz işlem tamamlanmadan önce bir yöntem çağrıldı. Bu durumda, InvalidOperationException "Zaman uyumsuz bir işlem zaten devam ediyor" iletisiyle oluşturulur.
Örnekler
Aşağıdaki örnek, her öğenin metin içeriğini görüntüler.
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
Örnekte giriş elems.xmlolarak dosyası kullanılır.
<book>
<title>Pride And Prejudice</title>
<price>19.95</price>
<misc/>
</book>
Açıklamalar
Bu özellik, aşağıdakiler arasındaki farkı belirlemenizi sağlar:
<item num="123"/>(IsEmptyElement ).true
<item num="123"></item> (IsEmptyElement öğesi falseiçeriği boş olsa da olur).
Boş öğeler için karşılık gelen EndElement bir düğüm oluşturulmaz.
Şema doğrulaması nedeniyle bir öğeye varsayılan içerik eklendiyse, IsEmptyElement yine de döndürür true. Elemanın varsayılan bir değere sahip olup olmadığına dair hiçbir etkisi yoktur. Başka bir deyişle, IsEmptyElement kaynak belgedeki öğenin bir bitiş öğesi etiketi olup olmadığını bildirir.