XmlReader.IsEmptyElement XmlReader.IsEmptyElement XmlReader.IsEmptyElement XmlReader.IsEmptyElement Property


派生クラスでオーバーライドされると、現在のノードが空の要素 (<MyElement/> など) かどうかを示す値を取得します。When overridden in a derived class, gets a value indicating whether the current node is an empty element (for example, <MyElement/>).

 abstract property bool IsEmptyElement { bool get(); };
public abstract bool IsEmptyElement { get; }
member this.IsEmptyElement : bool
Public MustOverride ReadOnly Property IsEmptyElement As Boolean


true 現在のノードが要素 (NodeType equals XmlNodeType.Element) で終了する/ >、それ以外のfalseします。true if the current node is an element (NodeType equals XmlNodeType.Element) that ends with />; otherwise, false.


先行の非同期操作が完了する前に、XmlReader メソッドが呼び出されました。An XmlReader method was called before a previous asynchronous operation finished. この場合、「非同期操作が既に実行されています」というメッセージと共に InvalidOperationException がスローされます。In this case, InvalidOperationException is thrown with the message "An asynchronous operation is already in progress."

次の例では、各要素のテキストの内容が表示されます。The following example displays the text content of each element.

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)
      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

例では、ファイルを使用してelems.xml、入力として。The example uses the file, elems.xml, as input.

  <title>Pride And Prejudice</title>


このプロパティにより、次のことが区別できます。This property enables you to determine the difference between the following:

<item num="123"/> (IsEmptyElementtrue)。<item num="123"/> (IsEmptyElement is true).

<item num="123"></item> (IsEmptyElementfalse要素の内容は空には)。<item num="123"></item> (IsEmptyElement is false, although element content is empty).

対応するEndElementノードが空の要素の生成されません。A corresponding EndElement node is not generated for empty elements.

既定のコンテンツがスキーマの検証のための要素に追加された場合IsEmptyElement返しますtrueします。If default content has been added to an element due to schema validation, IsEmptyElement still returns true. 要素が既定値を持つかどうかに影響を与えません。It has no bearing on whether or not the element has a default value. つまり、IsEmptyElement単にソース ドキュメント内の要素がある終了要素タグかどうかを報告します。In other words, IsEmptyElement simply reports whether or not the element in the source document had an end element tag.