XmlNodeReader.HasValue Свойство

Определение

Возвращает значение, определяющие наличие свойства Value у текущего узла.

public:
 virtual property bool HasValue { bool get(); };
public override bool HasValue { get; }
member this.HasValue : bool
Public Overrides ReadOnly Property HasValue As Boolean

Значение свойства

Boolean

Значение true, если узел, на котором расположено средство чтения, может иметь значение Value; в противном случае — false.

Примеры

В следующем примере отображается значение для каждого узла, который может иметь значение.

#using <System.Xml.dll>

using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
   XmlNodeReader^ reader = nullptr;
   try
   {
      
      // Create and load an XmlDocument.
      XmlDocument^ doc = gcnew XmlDocument;
      doc->LoadXml( "<?xml version='1.0' ?>"
      "<!DOCTYPE book [<!ENTITY h 'hardcover'>]>"
      "<book>"
      "<title>Pride And Prejudice</title>"
      "<misc>&h;</misc>"
      "</book>" );
      reader = gcnew XmlNodeReader( doc );
      
      // Parse the file and display each node.
      while ( reader->Read() )
      {
         if ( reader->HasValue )
                  Console::WriteLine( "({0})  {1}={2}", reader->NodeType, reader->Name, reader->Value );
         else
                  Console::WriteLine( "({0}) {1}", reader->NodeType, reader->Name );
      }
   }
   finally
   {
      if ( reader != nullptr )
            reader->Close();
   }

}
using System;
using System.IO;
using System.Xml;

public class Sample {

  public static void Main() {

    XmlNodeReader reader = null;

    try {

        // Create and load an XmlDocument.
        XmlDocument doc = new XmlDocument();
        doc.LoadXml("<?xml version='1.0' ?>" +
                    "<!DOCTYPE book [<!ENTITY h 'hardcover'>]>" +
                    "<book>" +
                    "<title>Pride And Prejudice</title>" +
                    "<misc>&h;</misc>" +
                    "</book>");

        reader = new XmlNodeReader(doc);

        // Parse the file and display each node.
        while (reader.Read()) {
           if (reader.HasValue)
             Console.WriteLine("({0})  {1}={2}", reader.NodeType, reader.Name, reader.Value);
           else
             Console.WriteLine("({0}) {1}", reader.NodeType, reader.Name);
         }
     }

     finally {
       if (reader!=null)
         reader.Close();
     }
  }
} // End class
Option Explicit
Option Strict

Imports System.IO
Imports System.Xml

Public Class Sample
    Public Shared Sub Main()
        Dim reader As XmlNodeReader = Nothing
        
        Try
            'Create and load an XmlDocument.
            Dim doc As New XmlDocument()
            doc.LoadXml("<?xml version='1.0' ?>" & _
                        "<!DOCTYPE book [<!ENTITY h 'hardcover'>]>" & _
                        "<book>" & _
                        "<title>Pride And Prejudice</title>" & _
                        "<misc>&h;</misc>" & _
                        "</book>")
            
            reader = New XmlNodeReader(doc)
            
            'Parse the file and display each node.
            While reader.Read()
                If reader.HasValue Then
                    Console.WriteLine("({0})  {1}={2}", reader.NodeType, reader.Name, reader.Value)
                Else
                    Console.WriteLine("({0}) {1}", reader.NodeType, reader.Name)
                End If
            End While
        
        Finally
            If Not (reader Is Nothing) Then
                reader.Close()
            End If
        End Try
    End Sub
End Class

Комментарии

Примечание

В платформа .NET Framework 2.0 рекомендуется создавать XmlReader экземпляры с помощью XmlReaderSettings класса и Create метода. Это позволяет использовать все новые функции, представленные в платформа .NET Framework. Дополнительные сведения см. в разделе "Примечания" на XmlReader странице справки.

В следующей таблице представлен список возвращаемых типов узлов со значениями.

Тип узла Значение
Attribute Значение атрибута.
CDATA Содержимое раздела CDATA.
Comment Содержимое комментария.
DocumentType Внутреннее подмножество.
ProcessingInstruction Все содержимое, за исключением цели.
SignificantWhitespace Пустое пространство в разметке модели со смешанным содержимым.
Text Содержимое текстового узла.
Whitespace Пробелы между разметкой.
XmlDeclaration Содержимое декларации.

Применяется к