Freigeben über


XmlValidatingReader.AttributeCount Eigenschaft

Definition

Ruft die Anzahl der Attribute im aktuellen Knoten ab.

public:
 virtual property int AttributeCount { int get(); };
public override int AttributeCount { get; }
member this.AttributeCount : int
Public Overrides ReadOnly Property AttributeCount As Integer

Eigenschaftswert

Die Anzahl der Attribute im aktuellen Knoten. Hierzu zählen auch Standardattribute.

Beispiele

Im folgenden Beispiel werden alle Elemente auf dem Stammknoten gelesen.

#using <System.Xml.dll>

using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
   XmlValidatingReader^ reader = nullptr;
   try
   {
      
      //Create the string to parse.
      String^ xmlFrag = "<book genre='novel' ISBN='1-861003-78' pubdate='1987'></book> ";
      
      //Create the XmlNamespaceManager.
      NameTable^ nt = gcnew NameTable;
      XmlNamespaceManager^ nsmgr = gcnew XmlNamespaceManager( nt );
      
      //Create the XmlParserContext.
      XmlParserContext^ context = gcnew XmlParserContext( nullptr,nsmgr,nullptr,XmlSpace::None );
      
      //Create the XmlValidatingReader .
      reader = gcnew XmlValidatingReader( xmlFrag,XmlNodeType::Element,context );
      
      //Read the attributes on the root element.
      reader->MoveToContent();
      if ( reader->HasAttributes )
      {
         for ( int i = 0; i < reader->AttributeCount; i++ )
         {
            reader->MoveToAttribute( i );
            Console::WriteLine( "{0} = {1}", reader->Name, reader->Value );

         }
         reader->MoveToElement();
      }
   }
   finally
   {
      if ( reader != nullptr )
            reader->Close();
   }

}

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

public class Sample
{
  public static void Main()
  {
    XmlValidatingReader reader = null;

    try
    {
       //Create the string to parse.
       string xmlFrag="<book genre='novel' ISBN='1-861003-78' pubdate='1987'></book> ";

       //Create the XmlNamespaceManager.
       NameTable nt = new NameTable();
       XmlNamespaceManager nsmgr = new XmlNamespaceManager(nt);

       //Create the XmlParserContext.
       XmlParserContext context = new XmlParserContext(null, nsmgr, null, XmlSpace.None);

       //Create the XmlValidatingReader .
       reader = new XmlValidatingReader(xmlFrag, XmlNodeType.Element, context);

       //Read the attributes on the root element.
       reader.MoveToContent();
       if (reader.HasAttributes){
         for (int i=0; i<reader.AttributeCount; i++){
            reader.MoveToAttribute(i);
            Console.WriteLine("{0} = {1}", reader.Name, reader.Value);
         }
         //Move the reader back to the node that owns the attribute.
         reader.MoveToElement();
       }
     }

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

Imports System.IO
Imports System.Xml

Public Class Sample
    
    Public Shared Sub Main()
        Dim reader As XmlValidatingReader = Nothing
        
        Try
            'Create the string to parse.
            Dim xmlFrag As String = "<book genre='novel' ISBN='1-861003-78' pubdate='1987'></book> "
            
            'Create the XmlNamespaceManager.
            Dim nt As New NameTable()
            Dim nsmgr As New XmlNamespaceManager(nt)
            
            'Create the XmlParserContext.
            Dim context As New XmlParserContext(Nothing, nsmgr, Nothing, XmlSpace.None)
            
            'Create the XmlValidatingReader .
            reader = New XmlValidatingReader(xmlFrag, XmlNodeType.Element, context)
            
            'Read the attributes on the root element.
            reader.MoveToContent()
            If reader.HasAttributes Then
                Dim i As Integer
                For i = 0 To reader.AttributeCount - 1
                    reader.MoveToAttribute(i)
                    Console.WriteLine("{0} = {1}", reader.Name, reader.Value)
                Next i
                'Move the reader back to the node that owns the attribute.
                reader.MoveToElement()
            End If
        
        
        Finally
            If Not (reader Is Nothing) Then
                reader.Close()
            End If
        End Try
    End Sub
End Class

Hinweise

Hinweis

Die XmlValidatingReader -Klasse ist in .NET Framework 2.0 veraltet. Sie können eine Validierungsinstanz erstellen, XmlReader indem Sie die XmlReaderSettings -Klasse und die Create -Methode verwenden. Weitere Informationen finden Sie im Abschnitt Hinweise unter der XmlReader Referenzseite.

Diese Eigenschaft ist nur für ElementKnoten , DocumentTypeund XmlDeclaration relevant. (Andere Knotentypen verfügen nicht über Attribute.)

Gilt für:

Weitere Informationen