XmlReader.IsEmptyElement Özellik

Tanım

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.

Şunlara uygulanır