XmlReader XmlReader XmlReader XmlReader Class

Definition

Stellt einen Reader dar, der einen schnellen Zugriff auf XML-Daten bietet, ohne Zwischenspeicher und welcher nur vorwärts möglich ist.Represents a reader that provides fast, noncached, forward-only access to XML data.

public ref class XmlReader abstract : IDisposable
public abstract class XmlReader : IDisposable
type XmlReader = class
    interface IDisposable
Public MustInherit Class XmlReader
Implements IDisposable
Vererbung
XmlReaderXmlReaderXmlReaderXmlReader
Abgeleitet
Implementiert

Beispiele

Der folgende Beispielcode veranschaulicht die asynchrone API zu verwenden, um XML zu analysieren.The following example code shows how to use the asynchronous API to parse XML.

async Task TestReader(System.IO.Stream stream)
{
    XmlReaderSettings settings = new XmlReaderSettings();
    settings.Async = true;

    using (XmlReader reader = XmlReader.Create(stream, settings))
    {
        while (await reader.ReadAsync())
        {
            switch (reader.NodeType)
            {
                case XmlNodeType.Element:
                    Console.WriteLine("Start Element {0}", reader.Name);
                    break;
                case XmlNodeType.Text:
                    Console.WriteLine("Text Node: {0}",
                             await reader.GetValueAsync());
                    break;
                case XmlNodeType.EndElement:
                    Console.WriteLine("End Element {0}", reader.Name);
                    break;
                default:
                    Console.WriteLine("Other node {0} with value {1}",
                                    reader.NodeType, reader.Value);
                    break;
            }
        }
    }
}
Public Async Function TestReader(stream As System.IO.Stream) As Task
    Dim settings As New XmlReaderSettings()
    settings.Async = True

    Using reader As XmlReader = XmlReader.Create(stream, settings)
        While (Await reader.ReadAsync())
            Select Case (reader.NodeType)
                Case XmlNodeType.Element
                    Console.WriteLine("Start Element {0}", reader.Name)
                Case XmlNodeType.Text
                    Console.WriteLine("Text Node: {0}",
                             Await reader.GetValueAsync())
                Case XmlNodeType.EndElement
                    Console.WriteLine("End Element {0}", reader.Name)
                Case Else
                    Console.WriteLine("Other node {0} with value {1}",
                                    reader.NodeType, reader.Value)
            End Select
        End While
    End Using
End Function

Hinweise

XmlReader bietet Vorwärtscursor, schreibgeschützte Zugriff auf XML-Daten in einem Dokument oder den Stream.provides forward-only, read-only access to XML data in a document or stream. Diese Klasse entspricht den W3C Extensible Markup Language (XML) 1.0 (fourth Edition) und -Namespaces in XML 1.0 (3. Auflage) Empfehlungen.This class conforms to the W3C Extensible Markup Language (XML) 1.0 (fourth edition) and the Namespaces in XML 1.0 (third edition) recommendations.

XmlReader -Methoden können Sie die XML-Daten durchlaufen und den Inhalt eines Knotens lesen.methods let you move through XML data and read the contents of a node. Die Eigenschaften der Klasse entsprechen den Wert des aktuellen Knotens handelt es sich, in dem der Reader positioniert ist. Die ReadState -Eigenschaftenwert gibt an, den aktuellen Zustand des XML-Reader.The properties of the class reflect the value of the current node, which is where the reader is positioned.The ReadState property value indicates the current state of the XML reader. Beispielsweise ist die Eigenschaft auf festgelegt ReadState.Initial durch die XmlReader.Read Methode und ReadState.Closed von der XmlReader.Close Methode.For example, the property is set to ReadState.Initial by the XmlReader.Read method and ReadState.Closed by the XmlReader.Close method. XmlReader bietet die datenkonformitätsüberprüfung und eine DTD oder Schema-Validierung.also provides data conformance checks and validation against a DTD or schema.

XmlReader verwendet ein Pull-Modell zum Abrufen von Daten an.uses a pull model to retrieve data. Dieses Modell:This model:

  • Vereinfacht die Verwaltung des Zustands von einem natürlichen und von oben nach unten Prozedur.Simplifies state management by a natural, top-down procedural refinement.

  • Unterstützt mehrere Eingabedatenströme und überlagern.Supports multiple input streams and layering.

  • Ermöglicht den Client, der Parser einen Puffer übergeben, in dem die Zeichenfolge direkt geschrieben werden, und vermeidet somit die Notwendigkeit einer zusätzlichen Zeichenfolge, die Kopie.Enables the client to give the parser a buffer into which the string is directly written, and thus avoids the necessity of an extra string copy.

  • Unterstützt das selektive Verarbeitung.Supports selective processing. Der Client kann Elemente überspringen und zu verarbeiten, die für die Anwendung von Interesse sind.The client can skip items and process those that are of interest to the application. Sie können auch festlegen, dass Eigenschaften im Voraus für die Verwaltung, wie der XML-Stream (z. B. Normalisierung) verarbeitet wird.You can also set properties in advance to manage how the XML stream is processed (for example, normalization).

In diesem AbschnittIn this section:

Erstellen einen XML-readerCreating an XML reader
Validieren von XML-DatenValidating XML data
DatenübereinstimmungData conformance
Navigieren durch die KnotenNavigating through nodes
Lesen der XML-ElementeReading XML elements
Lesen der XML-AttributeReading XML attributes
Lesen der XML-InhaltReading XML content
Konvertieren CLR-TypenConverting to CLR types
Asynchrone ProgrammierungAsynchronous programming
SicherheitsüberlegungenSecurity considerations

Erstellen einen XML-readerCreating an XML reader

Verwenden der Create Methode zum Erstellen einer XmlReader Instanz.Use the Create method to create an XmlReader instance.

Zwar .NET Framework konkrete Implementierungen der XmlReader Klasse, z. B. die XmlTextReader, XmlNodeReader, und die XmlValidatingReader Klassen, es wird empfohlen, dass Sie die spezialisierten Klassen nur in diesen Szenarien verwenden:Although the .NET Framework provides concrete implementations of the XmlReader class, such as the XmlTextReader, XmlNodeReader, and the XmlValidatingReader classes, we recommend that you use the specialized classes only in these scenarios:

  • Wenn Sie eine XML-DOM-Unterstruktur aus lesen möchten eine XmlNode -Objekts die XmlNodeReader Klasse.When you want to read an XML DOM subtree from an XmlNode object, use the XmlNodeReader class. (Jedoch nicht diese Klasse DTD- oder schemavalidierung unterstützen.)(However, this class doesn't support DTD or schema validation.)

  • Wenn müssen Sie Entitäten auf Anforderung erweitern, Sie nicht Ihren Text Content normalisiert, oder Sie möchten nicht standardmäßige Attribute zurückgegeben, verwenden Sie die XmlTextReader Klasse.If you must expand entities on request, you don't want your text content normalized, or you don't want default attributes returned, use the XmlTextReader class.

Um den Satz von Features für den XML-Reader aktivieren möchten, übergeben einen System.Xml.XmlReaderSettings -Objekt an die Create Methode.To specify the set of features you want to enable on the XML reader, pass an System.Xml.XmlReaderSettings object to the Create method. Können Sie eine einzelne System.Xml.XmlReaderSettings das Objekt, für mehrere Reader mit denselben Funktionen zu erstellen, oder ändern Sie die System.Xml.XmlReaderSettings Objekt, um einen neuen Reader mit einem anderen Satz von Features zu erstellen.You can use a single System.Xml.XmlReaderSettings object to create multiple readers with the same functionality, or modify the System.Xml.XmlReaderSettings object to create a new reader with a different set of features. Sie können auch auf einfache Weise einem vorhandenen Reader Funktionen hinzufügen.You can also easily add features to an existing reader.

Wenn Sie nicht verwenden eine System.Xml.XmlReaderSettings Objekt ist, werden Standardeinstellungen verwendet.If you don't use a System.Xml.XmlReaderSettings object, default settings are used. Finden Sie unter den Create Referenzseite für Details.See the Create reference page for details.

XmlReader Löst ein XmlException auf XML-Analysefehler.throws an XmlException on XML parse errors. Nachdem eine Ausnahme ausgelöst wird, ist der Zustand des Readers nicht vorhersagbar.After an exception is thrown, the state of the reader is not predictable. Beispielsweise kann der angegebene Knotentyp sich von dem Typ der Knoten des aktuellen Knotens sein.For example, the reported node type may be different from the actual node type of the current node. Verwenden der ReadState Eigenschaft zu überprüfen, ob der Reader befindet sich im Status "Fehler".Use the ReadState property to check whether the reader is in error state.

Validieren von XML-DatenValidating XML data

Um die Struktur von XML-Dokument und dessen elementbeziehungen, Datentypen und inhaltseinschränkungen anzugeben, verwenden Sie eine Dokumenttypdefinition (DTD) oder das Schema für XML Schema Definition Language (XSD).To define the structure of an XML document and its element relationships, data types, and content constraints, you use a document type definition (DTD) or XML Schema definition language (XSD) schema. Ein XML-Dokument gilt als wohlgeformt sein, wenn es alle syntaktischen Anforderungen von definierten erfüllt die W3C XML 1.0 Recommendation.An XML document is considered to be well formed if it meets all the syntactical requirements defined by the W3C XML 1.0 Recommendation. Es ist gültig, wenn es sowohl wohlgeformt ist und auch die Einschränkungen der DTD oder Schema entspricht.It's considered valid if it's well formed and also conforms to the constraints defined by its DTD or schema. (Finden Sie unter den W3C XML Schema Part 1: Strukturen und W3C XML Schema Part 2: Datatypes Empfehlungen.) Obwohl alle gültigen XML-Dokumente wohlgeformt sind, sind daher nicht alle wohlgeformten XML-Dokumente gültig.(See the W3C XML Schema Part 1: Structures and the W3C XML Schema Part 2: Datatypes recommendations.) Therefore, although all valid XML documents are well formed, not all well-formed XML documents are valid.

Sie können überprüfen, dass die Daten anhand einer DTD, die eine Inline-XSD-Schema oder ein XSD-Schema in ein XmlSchemaSet Objekt (einen Cache); diese Szenarien werden beschrieben, auf die Create Referenzseite.You can validate the data against a DTD, an inline XSD Schema, or an XSD Schema stored in an XmlSchemaSet object (a cache); these scenarios are described on the Create reference page. XmlReader Schema-Validierung von XML-Data Reduced (XDR) nicht unterstützt werden.doesn't support XML-Data Reduced (XDR) schema validation.

Verwenden Sie die folgenden Einstellungen auf der XmlReaderSettings Klasse, um welche Art von Validierung, geben Sie ggf. die XmlReader Instanz unterstützt.You use the following settings on the XmlReaderSettings class to specify what type of validation, if any, the XmlReader instance supports.

Verwenden Sie diese Option XmlReaderSettings MemberUse this XmlReaderSettings member Angabe vonTo specify
DtdProcessing propertyproperty Ob die DTD-Verarbeitung zu ermöglichen.Whether to allow DTD processing. Standardmäßig werden DTD-Verarbeitung nicht zugelassen.The default is to disallow DTD processing.
ValidationType propertyproperty Gibt an, ob der Reader die Daten überprüfen soll, und welche Art der Überprüfung (DTD oder Schema) durchgeführt.Whether the reader should validate data, and what type of validation to perform (DTD or schema). Der Standardwert ist keine Validierung.The default is no data validation.
ValidationEventHandler eventevent Ein Ereignishandler für das Informationen über Validierungsereignisse empfangen.An event handler for receiving information about validation events. Wenn ein Ereignishandler nicht angegeben wird, eine XmlException beim ersten Validierungsfehler ausgelöst wird.If an event handler is not provided, an XmlException is thrown on the first validation error.
ValidationFlags propertyproperty Zusätzlicher Validierung "Optionen" über die XmlSchemaValidationFlags Enumerationsmember:Additional validation options through the XmlSchemaValidationFlags enumeration members:

- AllowXmlAttributes– Lassen XML-Attribute (xml:*) in Instanzdokumenten auch, wenn sie nicht im Schema definiert sind.- AllowXmlAttributes-- Allow XML attributes (xml:*) in instance documents even when they're not defined in the schema. Die Attribute werden anhand ihres Datentyps validiert.The attributes are validated based on their data type. Finden Sie unter den XmlSchemaValidationFlags Referenzseite für die Einstellung für die Verwendung in bestimmten Szenarien.See the XmlSchemaValidationFlags reference page for the setting to use in specific scenarios. (Standardmäßig deaktiviert).(Disabled by default.)
- ProcessIdentityConstraints --Prozessidentitätsconstraints (xs:ID, xs:IDREF, xs:key, xs:keyref, xs:unique) während der Validierung gefunden.- ProcessIdentityConstraints --Process identity constraints (xs:ID, xs:IDREF, xs:key, xs:keyref, xs:unique) encountered during validation. (Standardmäßig aktiviert).(Enabled by default.)
- ProcessSchemaLocation – Verarbeiten Sie anhand des Schemas der xsi:schemaLocation oder xsi:noNamespaceSchemaLocation Attribut.- ProcessSchemaLocation --Process schemas specified by the xsi:schemaLocation or xsi:noNamespaceSchemaLocation attribute. (Standardmäßig aktiviert).(Enabled by default.)
- ProcessInlineSchema– Verarbeiten von Inline-XML-Schemas während der Überprüfung.- ProcessInlineSchema-- Process inline XML Schemas during validation. (Standardmäßig deaktiviert).(Disabled by default.)
- ReportValidationWarnings--Melden Sie Ereignisse, wenn eine überprüfungswarnung auftritt.- ReportValidationWarnings--Report events if a validation warning occurs. In der Regel wird eine Warnung ausgegeben, wenn keine DTD oder XML-Schema überprüft ein bestimmtes Element oder Attribut, für.A warning is typically issued when there is no DTD or XML Schema to validate a particular element or attribute against. Die ValidationEventHandler wird zur Benachrichtigung verwendet.The ValidationEventHandler is used for notification. (Standardmäßig deaktiviert).(Disabled by default.)
Schemas Die für die Validierung zu verwendende XmlSchemaSet.The XmlSchemaSet to use for validation.
XmlResolver propertyproperty Die XmlResolver zum Auflösen von und Zugreifen auf externe Ressourcen.The XmlResolver for resolving and accessing external resources. Dies kann externe Entitäten wie z. B. DTD und Schemas sowie alle umfassen xs:include oder xs:import in das XML-Schema enthaltenen Elemente.This can include external entities such as DTD and schemas, and any xs:include or xs:import elements contained in the XML Schema. Wenn Sie nicht angeben einer XmlResolver, XmlReader verwendet einen Standard- XmlUrlResolver ohne Benutzeranmeldeinformationen.If you don't specify an XmlResolver, the XmlReader uses a default XmlUrlResolver with no user credentials.

DatenübereinstimmungData conformance

Durch die erstellte XML-Reader der Create Methode die folgenden Complianceanforderungen erfüllen, werden standardmäßig:XML readers that are created by the Create method meet the following compliance requirements by default:

  • Neue Zeilen und Attributwert werden gemäß der W3C normalisiert XML 1.0 Recommendation.New lines and attribute value are normalized according to the W3C XML 1.0 Recommendation.

  • Alle Entitäten werden automatisch erweitert.All entities are automatically expanded.

  • Standardattribute deklariert, die in der Document Type Definition werden immer hinzugefügt werden, selbst wenn der Reader nicht zu überprüfen.Default attributes declared in the document type definition are always added even when the reader doesn't validate.

  • Deklaration eines XML-Namespacepräfix, den richtigen XML-Namespace-URI zugeordnet ist zulässig.Declaration of XML prefix mapped to the correct XML namespace URI is allowed.

  • Die Notationsnamen in einem einzelnen NotationType -Attributdeklaration und NmTokens in einem einzelnen Enumeration Attributdeklaration unterscheiden sich.The notation names in a single NotationType attribute declaration and NmTokens in a single Enumeration attribute declaration are distinct.

Verwenden Sie diese XmlReaderSettings Eigenschaften, die angeben, die Typen der übereinstimmungsprüfungen überprüft Sie aktivieren möchten:Use these XmlReaderSettings properties to specify the type of conformance checks you want to enable:

Verwenden Sie diese Option XmlReaderSettings EigenschaftUse this XmlReaderSettings property BeschreibungTo StandardDefault
CheckCharacters propertyproperty Aktivieren oder Deaktivieren von Überprüfungen für Folgendes:Enable or disable checks for the following:

-Zeichen werden innerhalb des Bereichs zulässiger XML-Zeichen gemäß der 2.2 Characters Abschnitt der W3C-Empfehlung für XML 1.0.- Characters are within the range of legal XML characters, as defined by the 2.2 Characters section of the W3C XML 1.0 Recommendation.
-Alle XML-Namen sind gültig, gemäß der 2.3 Common Syntactic Constructs Abschnitt der W3C-Empfehlung für XML 1.0.- All XML names are valid, as defined by the 2.3 Common Syntactic Constructs section of the W3C XML 1.0 Recommendation.

Wenn diese Eigenschaft auf festgelegt ist true (Standard), ein XmlException Ausnahme wird ausgelöst, die XML-Datei enthält unzulässige Zeichen oder eine ungültige XML-Namen (z. B. ein Elementname mit einer Zahl beginnt).When this property is set to true (default), an XmlException exception is thrown if the XML file contains illegal characters or invalid XML names (for example, an element name starts with a number).
Zeichen- und namensüberprüfung ist aktiviert.Character and name checking is enabled.

Durch Festlegen von CheckCharacters auf false wird die Zeichenüberprüfung für Zeichenentitätsverweise deaktiviert.Setting CheckCharacters to false turns off character checking for character entity references. Wenn der Reader Textdaten verarbeitet wird, überprüft, dass die XML-Namen gültig ist, unabhängig von dieser Einstellung sind.If the reader is processing text data, it always checks that XML names are valid, regardless of this setting. Hinweis: die Empfehlung XML 1.0-Konformität auf Dokumentebene erfordert, wenn eine DTD vorhanden ist.Note: The XML 1.0 recommendation requires document-level conformance when a DTD is present. Aus diesem Grund, wenn der Reader für die Unterstützung konfiguriert ist ConformanceLevel.Fragment, aber die XML-Daten enthält, eine Dokumenttypdefinition (DTD), ein XmlException ausgelöst.Therefore, if the reader is configured to support ConformanceLevel.Fragment, but the XML data contains a document type definition (DTD), an XmlException is thrown.
ConformanceLevel propertyproperty Wählen Sie die Ebene der Übereinstimmung mit Standards, um zu erzwingen:Choose the level of conformance to enforce:

- Document.- Document. Entsprechen die Regeln für eine wohlgeformtes XML 1.0-Dokument.Conforms to the rules for a well-formed XML 1.0 document.
- Fragment.- Fragment. Entsprechen den Regeln für ein wohlgeformtes Dokument-Fragment, das als genutzt werden, kann ein extern analysierte Entität.Conforms to the rules for a well-formed document fragment that can be consumed as an external parsed entity.
- Auto.- Auto. Entspricht der Ebene, die vom Reader entschieden.Conforms to the level decided by the reader.

Wenn die Daten in Übereinstimmung mit Standards, ist ein XmlException Ausnahme ausgelöst.If the data isn't in conformance, an XmlException exception is thrown.
Document

Der aktuelle Knoten ist die XML-Knoten, die auf dem der XML-Reader derzeit positioniert ist.The current node is the XML node on which the XML reader is currently positioned. Alle XmlReader Methoden führen Vorgänge in Bezug auf diesen Knoten und alle XmlReader Eigenschaften reflektiert den Wert des aktuellen Knotens.All XmlReader methods perform operations in relation to this node, and all XmlReader properties reflect the value of the current node.

Die folgenden Methoden erleichtern die zum Navigieren durch Knoten, und Analysieren von Daten.The following methods make it easy to navigate through nodes and parse data.

Verwenden Sie diese Option XmlReaderSettings MethodeUse this XmlReaderSettings method BeschreibungTo
Read Lesen Sie den ersten Knoten, und fahren Sie fort, über den Stream einen Knoten zu einem Zeitpunkt.Read the first node, and advance through the stream one node at a time. Solche Aufrufe erfolgen in der Regel innerhalb einer while Schleife.Such calls are typically performed inside a while loop.

Verwenden der NodeType Eigenschaft, um den Typ des aktuellen Knotens (z. B. Attribut, Kommentar, Element und So weiter) abzurufen.Use the NodeType property to get the type (for example, attribute, comment, element, and so on) of the current node.
Skip Überspringen Sie die untergeordneten Elemente des aktuellen Knotens, und wechseln Sie zum nächsten Knoten.Skip the children of the current node and move to the next node.
MoveToContent undand MoveToContentAsync Übersprungen Sie nicht-Inhaltsknoten, und verschieben Sie auf dem nächsten Inhaltsknoten oder an das Ende der Datei.Skip non-content nodes and move to the next content node or to the end of the file.

Nicht-Inhaltsknoten umfassen ProcessingInstruction, DocumentType, Comment, Whitespace, und SignificantWhitespace.Non-content nodes include ProcessingInstruction, DocumentType, Comment, Whitespace, and SignificantWhitespace.

Inhaltsknoten umfassen Textknoten ohne Leerraum, CDATA, EntityReference , und EndEntity.Content nodes include non-white space text, CDATA, EntityReference , and EndEntity.
ReadSubtree Ein Element und alle zugehörigen untergeordneten Elemente und gibt ein neues XmlReader festgelegte Instanz ReadState.Initial.Read an element and all its children, and return a new XmlReader instance set to ReadState.Initial.

Diese Methode ist nützlich zum Erstellen von XML-Elemente für die Begrenzung. Wenn Daten an eine andere Komponente für die Verarbeitung übergeben werden sollen und wie viel der Daten einschränken möchten kann z. B. die Komponente zugreifen.This method is useful for creating boundaries around XML elements; for example, if you want to pass data to another component for processing and you want to limit how much of your data the component can access.

Finden Sie unter den XmlReader.Read Referenzseite für ein Beispiel für die Navigation zu einem Zeitpunkt Stream ein Textknoten und für den Typ der einzelnen Knoten anzeigen.See the XmlReader.Read reference page for an example of navigating through a text stream one node at a time and displaying the type of each node.

In den folgenden Abschnitten beschrieben, wie Sie bestimmte Typen von Daten, z. B. Elemente, Attribute lesen können und typisierte Daten.The following sections describe how you can read specific types of data, such as elements, attributes, and typed data.

Lesen der XML-ElementeReading XML elements

Die folgende Tabelle enthält die Methoden und Eigenschaften, die die XmlReader -Klasse für Verarbeitungselemente bereitstellt.The following table lists the methods and properties that the XmlReader class provides for processing elements. Nach der XmlReader befindet sich auf ein Element, das die Eigenschaften des Knotens, z. B. Name, die Elementwerte wider.After the XmlReader is positioned on an element, the node properties, such as Name, reflect the element values. Zusätzlich zu den Mitgliedern unten, alle allgemeinen Methoden und Eigenschaften der XmlReader Klasse kann auch verwendet werden, um Elemente zu verarbeiten.In addition to the members described below, any of the general methods and properties of the XmlReader class can also be used to process elements. Beispielsweise können Sie die ReadInnerXml Methode, um den Inhalt eines Elements lesen.For example, you can use the ReadInnerXml method to read the contents of an element.

Hinweis

Finden Sie im Abschnitt 3.1 die W3C XML 1.0 Recommendation Definitionen von Starttags, Tags und leeres Element-Tags zu beenden.See section 3.1 of the W3C XML 1.0 Recommendation for definitions of start tags, end tags, and empty element tags.

Verwenden Sie diese Option XmlReader MemberUse this XmlReader member BeschreibungTo
IsStartElement Methodemethod Überprüfen Sie, ob der aktuelle Knoten ein Anfangstag oder ein leeres Elementtag ist.Check if the current node is a start tag or an empty element tag.
ReadStartElement Methodemethod Überprüfen Sie, ob der aktuelle Knoten ein Element, und treiben Sie den Reader auf den nächsten Knoten (Aufrufe IsStartElement gefolgt von Read).Check that the current node is an element and advance the reader to the next node (calls IsStartElement followed by Read).
ReadEndElement Methodemethod Überprüfen Sie, dass der aktuelle Knoten ein Endtag ist, und fahren Sie fort, des Readers auf den nächsten Knoten.Check that the current node is an end tag and advance the reader to the next node.
ReadElementString Methodemethod Lesen eines nur-Text-Elements.Read a text-only element.
ReadToDescendant Methodemethod Fahren Sie fort, des XML-Readers zum nächsten Element Nachfolger (untergeordnete), die dem angegebenen Namen ab.Advance the XML reader to the next descendant (child) element that has the specified name.
ReadToNextSibling Methodemethod Fahren Sie fort, des XML-Readers auf die nächste nebengeordnete Element mit dem angegebenen Namen ab.Advance the XML reader to the next sibling element that has the specified name.
IsEmptyElement propertyproperty Überprüfen Sie, ob das aktuelle Element ein Endtag aufweist.Check if the current element has an end element tag. Beispiel:For example:

- <item num="123"/> (IsEmptyElement ist true.)- <item num="123"/> (IsEmptyElement is true.)
- <item num="123"> </item> (IsEmptyElement ist false, obwohl der Inhalt des Elements leer ist.)- <item num="123"> </item> (IsEmptyElement is false, although the element's content is empty.)

Ein Beispiel für das Lesen des Textinhalts von Elementen, finden Sie unter den ReadString Methode.For an example of reading the text content of elements, see the ReadString method. Im folgende Beispiel verarbeitet Elemente mithilfe einer while Schleife.The following example processes elements by using a while loop.

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

Lesen der XML-AttributeReading XML attributes

XML-Attribute werden am häufigsten für Elemente gefunden, aber sie können auch auf XML-Deklaration und Dokumenttypknoten zulässig.XML attributes are most commonly found on elements, but they're also allowed on XML declaration and document type nodes.

Wenn auf einem Elementknoten positioniert die MoveToAttribute -Methode können Sie das Durchlaufen der Attributliste des Elements.When positioned on an element node, the MoveToAttribute method lets you go through the attribute list of the element. Beachten Sie, dass nach dem MoveToAttribute aufgerufen wurde, Eigenschaften des Knotens wie z. B. Name, NamespaceURI, und Prefix geben die Eigenschaften dieses Attributs, nicht die Eigenschaften des Elements das Attribut gehört.Note that after MoveToAttribute has been called, node properties such as Name, NamespaceURI, and Prefix reflect the properties of that attribute, not the properties of the element the attribute belongs to.

Die XmlReader Klasse enthält, diese Methoden und Eigenschaften zum Lesen und Verarbeiten von Attributen in Elementen.The XmlReader class provides these methods and properties to read and process attributes on elements.

Verwenden Sie diese Option XmlReader MemberUse this XmlReader member BeschreibungTo
HasAttributes propertyproperty Überprüfen Sie, ob der aktuelle Knoten über Attribute verfügt.Check whether the current node has any attributes.
AttributeCount propertyproperty Die Anzahl der Attribute für das aktuelle Element zu erhalten.Get the number of attributes on the current element.
MoveToFirstAttribute Methodemethod Verschieben Sie auf das erste Attribut in einem Element.Move to the first attribute in an element.
MoveToNextAttribute Methodemethod Verschieben Sie auf das nächste Attribut in einem Element.Move to the next attribute in an element.
MoveToAttribute Methodemethod Verschieben Sie in einem angegebenen Attribut.Move to a specified attribute.
GetAttribute Methode oder Item[String, String] Eigenschaftmethod or Item[String, String] property Ruft den Wert eines angegebenen Attributs.Get the value of a specified attribute.
IsDefault propertyproperty Überprüfen Sie, ob der aktuelle Knoten ein Attribut ist, die von den in der DTD oder Schema definierten Standardwert generiert wurde.Check whether the current node is an attribute that was generated from the default value defined in the DTD or schema.
MoveToElement Methodemethod Verschieben Sie in das Element, das das aktuelle Attribut besitzt.Move to the element that owns the current attribute. Verwenden Sie diese Methode, um auf ein Element zurückzugeben, nach der Navigation durch die Attribute.Use this method to return to an element after navigating through its attributes.
ReadAttributeValue Methodemethod Analysieren Sie den Wert des Attributs in einen oder mehrere Text, EntityReference, oder EndEntity Knoten.Parse the attribute value into one or more Text, EntityReference, or EndEntity nodes.

Alle allgemeinen XmlReader Methoden und Eigenschaften können auch zum Verarbeiten von Attributen verwendet werden.Any of the general XmlReader methods and properties can also be used to process attributes. Z. B. nach der XmlReader auf einem Attribut positioniert ist die Name und Value Eigenschaften stellen die Werte des Attributs.For example, after the XmlReader is positioned on an attribute, the Name and Value properties reflect the values of the attribute. Sie können auch Inhalte Read Methoden, um den Wert des Attributs zu erhalten.You can also use any of the content Read methods to get the value of the attribute.

Dieses Beispiel verwendet die AttributeCount Eigenschaft, um alle Attribute für ein Element zu navigieren.This example uses the AttributeCount property to navigate through all the attributes on an element.

// Display all attributes.
if (reader.HasAttributes) {
  Console.WriteLine("Attributes of <" + reader.Name + ">");
  for (int i = 0; i < reader.AttributeCount; i++) {
    Console.WriteLine("  {0}", reader[i]);
  }
  // Move the reader back to the element node.
  reader.MoveToElement(); 
}
' Display all attributes.
If reader.HasAttributes Then
  Console.WriteLine("Attributes of <" + reader.Name + ">")
  Dim i As Integer
  For i = 0 To (reader.AttributeCount - 1)
    Console.WriteLine("  {0}", reader(i))
  Next i
  ' Move the reader back to the element node.
  reader.MoveToElement() 
End If

Dieses Beispiel verwendet die MoveToNextAttribute -Methode in einer while Schleife, um die Navigation in der Attributes.This example uses the MoveToNextAttribute method in a while loop to navigate through the attributes.

if (reader.HasAttributes) {
  Console.WriteLine("Attributes of <" + reader.Name + ">");
  while (reader.MoveToNextAttribute()) {
    Console.WriteLine(" {0}={1}", reader.Name, reader.Value);
  }
  // Move the reader back to the element node.
  reader.MoveToElement();
}
If reader.HasAttributes Then
  Console.WriteLine("Attributes of <" + reader.Name + ">")
  While reader.MoveToNextAttribute()
    Console.WriteLine(" {0}={1}", reader.Name, reader.Value)
  End While
  ' Move the reader back to the element node.
  reader.MoveToElement()
End If

Lesen von Attributen in XML-DeklarationsknotenReading attributes on XML declaration nodes

Wenn der XML-Reader auf einem Knoten des XML-Deklaration, befindet die Value Eigenschaft gibt die Version, eigenständige und Codierungsinformationen als einzelne Zeichenfolge zurück.When the XML reader is positioned on an XML declaration node, the Value property returns the version, standalone, and encoding information as a single string. XmlReader Objekten von erstellt die Create -Methode, die XmlTextReader -Klasse, und die XmlValidatingReader Klasse verfügbar zu machen, die Version, die eigenständige und die Codierung Elemente als Attribute.objects created by the Create method, the XmlTextReader class, and the XmlValidatingReader class expose the version, standalone, and encoding items as attributes.

Lesen von Attributen in DokumenttypknotenReading attributes on document type nodes

Wenn der XML-Reader auf einem Dokumenttypknoten positioniert ist die GetAttribute Methode und Item[String, String] Eigenschaft kann verwendet werden, um die Werte für die Literale SYSTEM und PUBLIC zurückzugeben.When the XML reader is positioned on a document type node, the GetAttribute method and Item[String, String] property can be used to return the values for the SYSTEM and PUBLIC literals. Zum Beispiel der Aufruf reader.GetAttribute("PUBLIC") der Wert PUBLIC zurückgegeben.For example, calling reader.GetAttribute("PUBLIC") returns the PUBLIC value.

Lesen von Attributen auf die VerarbeitungsanweisungsknotenReading attributes on processing instruction nodes

Wenn die XmlReader auf einem Verarbeitungsanweisungsknoten positioniert ist die Value Eigenschaft gibt den gesamten Textinhalt zurück.When the XmlReader is positioned on a processing instruction node, the Value property returns the entire text content. Elemente im Verarbeitungsanweisungsknoten werden nicht als Attribute behandelt.Items in the processing instruction node aren't treated as attributes. Sie können nicht gelesen werden, mit der GetAttribute oder MoveToAttribute Methode.They can't be read with the GetAttribute or MoveToAttribute method.

Lesen der XML-InhaltReading XML content

Die XMLReader-Klasse enthält die folgenden Elemente, die Lesen von Inhalt aus einer XML-Datei, und geben Sie den Inhalt als Zeichenfolgenwerte zurück.The XMLReader class includes the following members that read content from an XML file and return the content as string values. (CLR-Typen finden Sie unter den nächsten Abschnitt.)(To return CLR types, see the next section.)

Verwenden Sie diese Option XmlReader MemberUse this XmlReader member BeschreibungTo
Value propertyproperty Rufen Sie den Textinhalt des aktuellen Knotens.Get the text content of the current node. Der zurückgegebene Wert hängt von Knotentyp ab. finden Sie unter den Value Referenzseite für Details.The value returned depends on the node type; see the Value reference page for details.
ReadString Methodemethod Abrufen des Inhalts einer Element- oder Textknotens als Zeichenfolge an.Get the content of an element or text node as a string. Diese Methode wird bei verarbeitungsanweisungen und Kommentare beendet.This method stops on processing instructions and comments.

Weitere Informationen zur Behandlung von bestimmten Knotentypen aufgeführt, die in dieser Methode finden Sie unter den ReadString Referenzseite.For details on how this method handles specific node types, see the ReadString reference page.
ReadInnerXml und ReadInnerXmlAsync Methodenand ReadInnerXmlAsync methods Rufen Sie alle Inhalte des aktuellen Knotens einschließlich Markup, aber ausschließlich Start- und Endtags.Get all the content of the current node, including the markup, but excluding start and end tags. Z. B. für:For example, for:

<node>this<child id="123"/></node>

ReadInnerXml Gibt zurück:returns:

this<child id="123"/>
ReadOuterXml und ReadOuterXmlAsync Methodenand ReadOuterXmlAsync methods Gesamten Inhalt der den aktuellen Knoten und seine untergeordneten Elemente, einschließlich Markup und Start-/Endtags zu erhalten.Get all the content of the current node and its children, including markup and start/end tags. Z. B. für:For example, for:

<node>this<child id="123"/></node>

ReadOuterXml Gibt zurück:returns:

<node>this<child id="123"/></node>

Konvertieren CLR-TypenConverting to CLR types

Können Sie die Mitglieder der XmlReader Klasse (in der folgenden Tabelle aufgeführt) XML-Daten zu lesen und die Rückgabewerte als common Language Runtime (CLR)-Typen anstelle von Zeichenfolgen.You can use the members of the XmlReader class (listed in the following table) to read XML data and return values as common language runtime (CLR) types instead of strings. Diese Member können Sie Werte in der Darstellung zu erhalten, die für die Codierung Aufgabe am besten geeignet ist, ohne manuell analysieren oder konvertieren Zeichenfolgenwerte.These members enable you to get values in the representation that is most appropriate for your coding task without having to manually parse or convert string values.

  • Die ReadElementContentAs Methoden können nur für Elementknotentypen aufgerufen werden.The ReadElementContentAs methods can only be called on element node types. Diese Methoden können nicht auf Elemente verwendet werden, die untergeordnete Elemente oder gemischten Inhalt enthalten.These methods cannot be used on elements that contain child elements or mixed content. Beim Aufruf der XmlReader Objekt liest das Anfangstag und liest den Elementinhalt, und klicken Sie dann direkt hinter das Endelementtag verschoben.When called, the XmlReader object reads the start tag, reads the element content, and then moves past the end element tag. Verarbeitungsanweisungen und Kommentare werden ignoriert und Entitäten erweitert.Processing instructions and comments are ignored and entities are expanded.

  • Die ReadContentAs Methoden lesen den Textinhalt an der aktuellen Readerposition ab, und wenn die XML-Daten keine Schema- oder Typinformationen zugeordnet, Daten, konvertieren Sie den Textinhalt in den angeforderten Rückgabetyp.The ReadContentAs methods read the text content at the current reader position, and if the XML data doesn't have any schema or data type information associated with it, convert the text content to the requested return type. Text, Leerraum, signifikanter Leerraum und CDATA-Abschnitte sind verkettet.Text, white space, significant white space and CDATA sections are concatenated. Kommentare und verarbeitungsanweisungen werden übersprungen und Entitätsverweise automatisch aufgelöst werden.Comments and processing instructions are skipped, and entity references are automatically resolved.

Die XmlReader Klasse verwendet die Regeln der W3C XML Schema Part 2: Datatypes Empfehlung.The XmlReader class uses the rules defined by the W3C XML Schema Part 2: Datatypes recommendation.

Verwenden Sie diese Option XmlReader MethodeUse this XmlReader method Um diese CLR-Typ zurückzugeben.To return this CLR type
ReadContentAsBoolean undand ReadElementContentAsBoolean Boolean
ReadContentAsDateTime undand ReadElementContentAsDateTime DateTime
ReadContentAsDouble undand ReadElementContentAsDouble Double
ReadContentAsLong undand ReadElementContentAsLong Int64
ReadContentAsInt undand ReadElementContentAsInt Int32
ReadContentAsString undand ReadElementContentAsString String
ReadContentAs undand ReadElementContentAs Der Typ, die Sie angeben, mit der returnType ParameterThe type you specify with the returnType parameter
ReadContentAsObject undand ReadElementContentAsObject Am besten geeigneten Typs, laut der XmlReader.ValueType Eigenschaft.The most appropriate type, as specified by the XmlReader.ValueType property. Finden Sie unter Typenunterstützung in den System.Xml-Klassen für Zuordnungsinformationen.See Type Support in the System.Xml Classes for mapping information.

Wenn ein Element einfach um einen CLR-Typ aufgrund dessen Format konvertiert werden kann, können Sie eine schemazuordnung, um eine erfolgreiche Konvertierung sicherzustellen.If an element can't easily be converted to a CLR type because of its format, you can use a schema mapping to ensure a successful conversion. Im folgenden Beispiel wird eine XSD-Datei konvertieren die hire-date Element, das xs:date Typ und verwendet dann die ReadElementContentAsDateTime Methode, um das Element als zurückzugeben eine DateTime Objekt.The following example uses an .xsd file to convert the hire-date element to the xs:date type, and then uses the ReadElementContentAsDateTime method to return the element as a DateTime object.

Eingabe (hireDate.xml):Input (hireDate.xml):

<employee xmlns="urn:empl-hire">
    <ID>12365</ID>
    <hire-date>2003-01-08</hire-date>
    <title>Accountant</title>
</employee>

Schema (hireDate.xsd):Schema (hireDate.xsd):

<?xml version="1.0"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="urn:empl-hire" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="employee">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="ID" type="xs:unsignedShort" />
        <xs:element name="hire-date" type="xs:date" />
        <xs:element name="title" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>

Code:Code:

// Create a validating XmlReader object. The schema 
// provides the necessary type information.
XmlReaderSettings settings = new XmlReaderSettings();
settings.ValidationType = ValidationType.Schema;
settings.Schemas.Add("urn:empl-hire", "hireDate.xsd");
using (XmlReader reader = XmlReader.Create("hireDate.xml", settings)) {

  // Move to the hire-date element.
  reader.MoveToContent();
  reader.ReadToDescendant("hire-date");

  // Return the hire-date as a DateTime object.
  DateTime hireDate = reader.ReadElementContentAsDateTime();
  Console.WriteLine("Six Month Review Date: {0}", hireDate.AddMonths(6));
}
' Create a validating XmlReader object. The schema 
' provides the necessary type information.
Dim settings As XmlReaderSettings = New XmlReaderSettings()
settings.ValidationType = ValidationType.Schema
settings.Schemas.Add("urn:empl-hire", "hireDate.xsd")
Using reader As XmlReader = XmlReader.Create("hireDate.xml", settings) 
  ' Move to the hire-date element.
  reader.MoveToContent()
  reader.ReadToDescendant("hire-date")

  ' Return the hire-date as a DateTime object.
  Dim hireDate As DateTime = reader.ReadElementContentAsDateTime()
  Console.WriteLine("Six Month Review Date: {0}", hireDate.AddMonths(6))
End Using

Ausgabe:Output:

Six Month Review Date:  7/8/2003 12:00:00 AM  

Asynchrone ProgrammierungAsynchronous programming

Die meisten der XmlReader Methoden verfügen über asynchrone Gegenstücke, die "Async" am Ende den Namen haben.Most of the XmlReader methods have asynchronous counterparts that have "Async" at the end of their method names. Z. B. das asynchrone Äquivalent von ReadContentAsObject ist ReadContentAsObjectAsync.For example, the asynchronous equivalent of ReadContentAsObject is ReadContentAsObjectAsync.

Die folgenden Methoden können mit asynchrone Methodenaufrufe verwendet werden:The following methods can be used with asynchronous method calls:

Asynchrone Verwendung für Methoden, die keine asynchrone Entsprechungen haben Sie in den folgenden Abschnitten.The following sections describe asynchronous usage for methods that don't have asynchronous counterparts.

ReadStartElement-MethodeReadStartElement method

public static async Task ReadStartElementAsync(this XmlReader reader, string localname, string ns)
{
    if (await reader.MoveToContentAsync() != XmlNodeType.Element)
    {
        throw new InvalidOperationException(reader.NodeType.ToString() + " is an invalid XmlNodeType");
    }
    if ((reader.LocalName == localname) && (reader.NamespaceURI == ns))
    {
        await reader.ReadAsync();
    }
    else
    {
        throw new InvalidOperationException("localName or namespace doesn’t match");
    }
}
<Extension()>
Public Async Function ReadStartElementAsync(reader As XmlReader, localname As String, ns As String) As Task
    If (Await reader.MoveToContentAsync() <> XmlNodeType.Element) Then
        Throw New InvalidOperationException(reader.NodeType.ToString() + " is an invalid XmlNodeType")
    End If

    If ((reader.LocalName = localname) And (reader.NamespaceURI = ns)) Then
        Await reader.ReadAsync()
    Else
        Throw New InvalidOperationException("localName or namespace doesn’t match")
    End If
End Function

ReadEndElement-MethodeReadEndElement method

public static async Task ReadEndElementAsync(this XmlReader reader)
{
    if (await reader.MoveToContentAsync() != XmlNodeType.EndElement)
    {
        throw new InvalidOperationException();
    }
    await reader.ReadAsync();
}
<Extension()>
Public Async Function ReadEndElementAsync(reader As XmlReader) As task
    If (Await reader.MoveToContentAsync() <> XmlNodeType.EndElement) Then
        Throw New InvalidOperationException()
    End If
    Await reader.ReadAsync()
End Function

ReadToNextSibling-MethodeReadToNextSibling method

public static async Task<bool> ReadToNextSiblingAsync(this XmlReader reader, string localName, string namespaceURI)
{
    if (localName == null || localName.Length == 0)
    {
        throw new ArgumentException("localName is empty or null");
    }
    if (namespaceURI == null)
    {
        throw new ArgumentNullException("namespaceURI");
    }

    // atomize local name and namespace
    localName = reader.NameTable.Add(localName);
    namespaceURI = reader.NameTable.Add(namespaceURI);

    // find the next sibling
    XmlNodeType nt;
    do
    {
        await reader.SkipAsync();
        if (reader.ReadState != ReadState.Interactive)
            break;
        nt = reader.NodeType;
        if (nt == XmlNodeType.Element &&
             ((object)localName == (object)reader.LocalName) &&
             ((object)namespaceURI ==(object)reader.NamespaceURI))
        {
            return true;
        }
    } while (nt != XmlNodeType.EndElement && !reader.EOF);
    
    return false;
}
<Extension()>
Public Async Function ReadToNextSiblingAsync(reader As XmlReader, localName As String, namespaceURI As String) As Task(Of Boolean)
    If (localName = Nothing Or localName.Length = 0) Then
        Throw New ArgumentException("localName is empty or null")
    End If

    If (namespaceURI = Nothing) Then
        Throw New ArgumentNullException("namespaceURI")
    End If

    ' atomize local name and namespace
    localName = reader.NameTable.Add(localName)
    namespaceURI = reader.NameTable.Add(namespaceURI)

    ' find the next sibling
    Dim nt As XmlNodeType
    Do

        Await reader.SkipAsync()
        If (reader.ReadState <> ReadState.Interactive) Then
            Exit Do
        End If
        nt = reader.NodeType
        If ((nt = XmlNodeType.Element) And
           ((CObj(localName) = CObj(reader.LocalName))) And
           (CObj(namespaceURI) = CObj(reader.NamespaceURI))) Then
            Return True
        End If
    Loop While (nt <> XmlNodeType.EndElement And (Not reader.EOF))

    Return False

End Function

ReadToFollowing-MethodeReadToFollowing method

public static async Task<bool> ReadToFollowingAsync(this XmlReader reader, string localName, string namespaceURI)
{
    if (localName == null || localName.Length == 0)
    {
        throw new ArgumentException("localName is empty or null");
    }
    if (namespaceURI == null)
    {
        throw new ArgumentNullException("namespaceURI");
    }

    // atomize local name and namespace
    localName = reader.NameTable.Add(localName);
    namespaceURI = reader.NameTable.Add(namespaceURI);

    // find element with that name
    while (await reader.ReadAsync())
    {
        if (reader.NodeType == XmlNodeType.Element && ((object)localName == (object)reader.LocalName) && ((object)namespaceURI == (object)reader.NamespaceURI))
        {
            return true;
        }
    }
    return false;
}
<Extension()>
Public Async Function ReadToFollowingAsync(reader As XmlReader, localName As String, namespaceURI As String) As Task(Of Boolean)
    If (localName = Nothing Or localName.Length = 0) Then
        Throw New ArgumentException("localName is empty or null")
    End If

    If (namespaceURI = Nothing) Then
        Throw New ArgumentNullException("namespaceURI")
    End If

    ' atomize local name and namespace
    localName = reader.NameTable.Add(localName)
    namespaceURI = reader.NameTable.Add(namespaceURI)

    ' find element with that name
    While (Await reader.ReadAsync())
        If ((reader.NodeType = XmlNodeType.Element) And
           (CObj(localName) = CObj(reader.LocalName)) And
           (CObj(namespaceURI) = CObj(reader.NamespaceURI))) Then
            Return True
        End If
    End While

    Return False
End Function

ReadToDescendant-MethodeReadToDescendant method

public static async Task<bool> ReadToDescendantAsync(this XmlReader reader, string localName, string namespaceURI)
{
    if (localName == null || localName.Length == 0)
    {
        throw new ArgumentException("localName is empty or null");
    }
    if (namespaceURI == null)
    {
        throw new ArgumentNullException("namespaceURI");
    }
    // save the element or root depth
    int parentDepth = reader.Depth;
    if (reader.NodeType != XmlNodeType.Element)
    {
        // adjust the depth if we are on root node
        if (reader.ReadState == ReadState.Initial)
        {
            parentDepth--;
        }
        else
        {
            return false;
        }
    }
    else if (reader.IsEmptyElement)
    {
        return false;
    }

    // atomize local name and namespace
    localName = reader.NameTable.Add(localName);
    namespaceURI = reader.NameTable.Add(namespaceURI);

    // find the descendant
    while (await reader.ReadAsync() && reader.Depth > parentDepth)
    {
        if (reader.NodeType == XmlNodeType.Element && ((object)localName == (object)reader.LocalName) && ((object)namespaceURI == (object)reader.NamespaceURI))
        {
            return true;
        }
    }
    return false;
}
<Extension()>
Public Async Function ReadToDescendantAsync(reader As XmlReader, localName As String, namespaceURI As String) As Task(Of Boolean)
    If (localName = Nothing Or localName.Length = 0) Then
        Throw New ArgumentException("localName is empty or null")
    End If

    If (namespaceURI = Nothing) Then
        Throw New ArgumentNullException("namespaceURI")
    End If

    ' save the element or root depth
    Dim parentDepth As Integer = reader.Depth
    If (reader.NodeType <> XmlNodeType.Element) Then
        ' adjust the depth if we are on root node
        If (reader.ReadState = ReadState.Initial) Then
            parentDepth -= 1
        Else
            Return False
        End If
    ElseIf (reader.IsEmptyElement) Then
        Return False
    End If
    ' atomize local name and namespace
    localName = reader.NameTable.Add(localName)
    namespaceURI = reader.NameTable.Add(namespaceURI)

    ' find the descendant
    While (Await reader.ReadAsync() And reader.Depth > parentDepth)
        If (reader.NodeType = XmlNodeType.Element And
           (CObj(localName) = CObj(reader.LocalName)) And
           (CObj(namespaceURI) = CObj(reader.NamespaceURI))) Then
            Return True
        End If
    End While

    Return False
End Function

SicherheitsüberlegungenSecurity considerations

Beachten Sie Folgendes bei der Arbeit mit der XmlReader Klasse:Consider the following when working with the XmlReader class:

  • Ausnahmen in der XmlReader können offen legen, die an die Informationen über Pfade, die Sie nicht möchten, können bis zu Ihrer app.Exceptions thrown from the XmlReader can disclose path information that you might not want bubbled up to your app. Ihre app muss die Ausnahmen abfangen und diese entsprechend verarbeiten.Your app must catch exceptions and process them appropriately.

  • Aktivieren Sie nicht DTD-Verarbeitung, wenn Sie Bedenken bezüglich eines Denial-of-Service-Problemen-sind oder wenn Sie mit nicht vertrauenswürdigen Quellen arbeiten.Do not enable DTD processing if you're concerned about denial of service issues or if you're dealing with untrusted sources. DTD-Verarbeitung ist standardmäßig deaktiviert, um XmlReader Objekten von erstellt die Create Methode.DTD processing is disabled by default for XmlReader objects created by the Create method.

    Wenn die DTD-Verarbeitung aktiviert ist, können die Ressourcen, auf die der XmlSecureResolver Zugriff hat, mit dem XmlReader eingeschränkt werden.If you have DTD processing enabled, you can use the XmlSecureResolver to restrict the resources that the XmlReader can access. Sie können auch Ihre app entwerfen, sodass die XML-Verarbeitung bezüglich Arbeitsspeicher und Zeit eingeschränkt.You can also design your app so that the XML processing is memory and time constrained. Beispielsweise können Sie die Timeouts in Ihrer ASP.NET-App konfigurieren.For example, you can configure time-out limits in your ASP.NET app.

  • XML-Daten können Verweise auf externe Ressourcen wie z. B. eine Schemadatei enthalten.XML data can include references to external resources such as a schema file. Standardmäßig werden externe Ressourcen aufgelöst, mit einem XmlUrlResolver Objekt ohne Benutzeranmeldeinformationen.By default, external resources are resolved by using an XmlUrlResolver object with no user credentials. Durch die folgenden Aktionen können Sie die Sicherheit weiter erhöhen:You can secure this further by doing one of the following:

  • Die ProcessInlineSchema und ProcessSchemaLocation Validierungsflag eines ein XmlReaderSettings Objekt werden nicht standardmäßig festgelegt.The ProcessInlineSchema and ProcessSchemaLocation validation flags of an XmlReaderSettings object aren't set by default. Dies trägt zum Schutz der XmlReader vor schemabasierten Angriffen, bei der XML-Daten aus einer nicht vertrauenswürdigen Quelle verarbeitet wird.This helps to protect the XmlReader against schema-based attacks when it is processing XML data from an untrusted source. Wenn diese Flags festgelegt sind, wird der XmlResolver des XmlReaderSettings-Objekts verwendet, um die im Instanzdokument des XmlReader erkannten Schemaspeicherorte aufzulösen.When these flags are set, the XmlResolver of the XmlReaderSettings object is used to resolve schema locations encountered in the instance document in the XmlReader. Wenn die XmlResolver -Eigenschaftensatz auf null, Schemaspeicherorte nicht aufgelöst sind. auch wenn die ProcessInlineSchema und ProcessSchemaLocation Validierungsflag festgelegt sind.If the XmlResolver property is set to null, schema locations aren't resolved even if the ProcessInlineSchema and ProcessSchemaLocation validation flags are set.

    Durch während der Validierung hinzugefügte Schemas werden neue Typen hinzugefügt, sodass das Validierungsergebnis des überprüften Dokuments möglicherweise geändert wird.Schemas added during validation add new types and can change the validation outcome of the document being validated. Daher sollten externe Schemata nur von vertrauenswürdigen Quellen aufgelöst werden.As a result, external schemas should only be resolved from trusted sources.

    Es wird empfohlen, das Deaktivieren der ProcessIdentityConstraints zu kennzeichnen, wenn nicht vertrauenswürdige, große XML-Dokumente in Szenarien mit hochverfügbarkeit anhand eines Schemas zu überprüfen, die Identity-Einschränkung über einen großen Teil des Dokuments besitzt.We recommend disabling the ProcessIdentityConstraints flag when validating untrusted, large XML documents in high availability scenarios against a schema that has identity constraints over a large part of the document. Dieses Flag ist standardmäßig aktiviert.This flag is enabled by default.

  • XML-Daten können eine Vielzahl von Attributen, Namespacedeklarationen, geschachtelten Elementen usw. enthalten, deren Verarbeitung sehr zeitaufwendig ist.XML data can contain a large number of attributes, namespace declarations, nested elements and so on that require a substantial amount of time to process. Um die Größe der Eingabe zu begrenzen, die an gesendet wird die XmlReader, können Sie:To limit the size of the input that is sent to the XmlReader, you can:

  • Die ReadValueChunk Methode kann verwendet werden, um große Datenströme behandeln.The ReadValueChunk method can be used to handle large streams of data. Mit dieser Methode wird jeweils eine kleine Anzahl von Zeichen gelesen, anstatt dem ganzen Wert eine einzelne Zeichenfolge zuzuweisen.This method reads a small number of characters at a time instead of allocating a single string for the whole value.

  • Beim Lesen eines XML-Dokuments mit einer großen Anzahl von eindeutigen lokalen Namen, Namespaces oder Präfixen kann ein Problem auftreten.When reading an XML document with a large number of unique local names, namespaces, or prefixes, a problem can occur. Bei Verwendung eine Klasse, die von abgeleitet XmlReader, und rufen Sie die LocalName, Prefix, oder NamespaceURI Eigenschaft für die einzelnen Elemente, die zurückgegebene Zeichenfolge hinzugefügt wird eine NameTable.If you are using a class that derives from XmlReader, and you call the LocalName, Prefix, or NamespaceURI property for each item, the returned string is added to a NameTable. Die Auflistung frei, die die NameTable nimmt Größe der in ein virtueller Speicherverlust Zeichenfolgenhandles nie ab.The collection held by the NameTable never decreases in size, creating a virtual memory leak of the string handles. Eine Lösung hierfür ist eine Ableitung der NameTable Klasse und ein maximales Größenkontingent zu erzwingen.One mitigation for this is to derive from the NameTable class and enforce a maximum size quota. (Es gibt keine Möglichkeit, um zu verhindern, dass die Verwendung von einer NameTable, oder Wechseln der NameTable vollen).(There is no way to prevent the use of a NameTable, or to switch the NameTable when it is full). Eine andere Lösung ist, verwenden Sie die Eigenschaften, die bereits erwähnt, und verwenden Sie stattdessen die MoveToAttribute -Methode mit dem IsStartElement Methode möglichst; diese Methoden nicht Zeichenfolgen zurück und umgehen somit das Problem eines Überlaufs der NameTable Auflistung.Another mitigation is to avoid using the properties mentioned and instead use the MoveToAttribute method with the IsStartElement method where possible; those methods don't return strings and thus avoid the problem of overfilling the NameTable collection.

  • XmlReaderSettings -Objekte können vertraulichen Informationen wie z. B. die Anmeldeinformationen des Benutzers enthalten.objects can contain sensitive information such as user credentials. Eine nicht vertrauenswürdige Komponente könnte mithilfe der XmlReaderSettings -Objekt und den Anmeldeinformationen des Benutzers erstellen XmlReader Objekte zum Lesen von Daten.An untrusted component could use the XmlReaderSettings object and its user credentials to create XmlReader objects to read data. Seien Sie vorsichtig beim Zwischenspeichern von XmlReaderSettings Objekte oder bei der Übergabe der XmlReaderSettings Objekt von einer Komponente zu einem anderen.Be careful when caching XmlReaderSettings objects, or when passing the XmlReaderSettings object from one component to another.

  • Achten Sie darauf, keine Unterstützung für Komponenten aus einer nicht vertrauenswürdigen Quelle zu gewähren (z. B. den Objekten NameTable, XmlNamespaceManager und XmlResolver).Do not accept supporting components, such as NameTable, XmlNamespaceManager, and XmlResolver objects, from an untrusted source.

Konstruktoren

XmlReader() XmlReader() XmlReader() XmlReader()

Initialisiert eine neue Instanz der XmlReader-Klasse.Initializes a new instance of the XmlReader class.

Eigenschaften

AttributeCount AttributeCount AttributeCount AttributeCount

Ruft beim Überschreiben in einer abgeleiteten Klasse die Anzahl der Attribute für den aktuellen Knoten ab.When overridden in a derived class, gets the number of attributes on the current node.

BaseURI BaseURI BaseURI BaseURI

Ruft beim Überschreiben in einer abgeleiteten Klasse den Basis-URI des aktuellen Knotens ab.When overridden in a derived class, gets the base URI of the current node.

CanReadBinaryContent CanReadBinaryContent CanReadBinaryContent CanReadBinaryContent

Ruft einen Wert ab, der angibt, ob der XmlReader die Methoden für das Lesen von Inhalt im Binärformat implementiert.Gets a value indicating whether the XmlReader implements the binary content read methods.

CanReadValueChunk CanReadValueChunk CanReadValueChunk CanReadValueChunk

Ruft einen Wert ab, der angibt, ob der XmlReader die angegebene ReadValueChunk(Char[], Int32, Int32)-Methode implementiert.Gets a value indicating whether the XmlReader implements the ReadValueChunk(Char[], Int32, Int32) method.

CanResolveEntity CanResolveEntity CanResolveEntity CanResolveEntity

Ruft einen Wert ab, der angibt, ob dieser Reader Entitäten analysieren und auflösen kann.Gets a value indicating whether this reader can parse and resolve entities.

Depth Depth Depth Depth

Ruft beim Überschreiben in einer abgeleiteten Klasse die Tiefe des aktuellen Knotens im XML-Dokument ab.When overridden in a derived class, gets the depth of the current node in the XML document.

EOF EOF EOF EOF

Ruft beim Überschreiben in einer abgeleiteten Klasse einen Wert ab, der angibt, ob sich der Reader am Ende des Streams befindet.When overridden in a derived class, gets a value indicating whether the reader is positioned at the end of the stream.

HasAttributes HasAttributes HasAttributes HasAttributes

Ruft einen Wert ab, der angibt, ob der aktuelle Knoten über Attribute verfügt.Gets a value indicating whether the current node has any attributes.

HasValue HasValue HasValue HasValue

Ruft beim Überschreiben in einer abgeleiteten Klasse einen Wert ab, der angibt, ob der aktuelle Knoten einen Value aufweisen kann.When overridden in a derived class, gets a value indicating whether the current node can have a Value.

IsDefault IsDefault IsDefault IsDefault

Ruft beim Überschreiben in einer abgeleiteten Klasse einen Wert ab, der angibt, ob der aktuelle Knoten ein Attribut ist, das aus dem in der DTD oder dem Schema definierten Standardwert generiert wurde.When overridden in a derived class, gets a value indicating whether the current node is an attribute that was generated from the default value defined in the DTD or schema.

IsEmptyElement IsEmptyElement IsEmptyElement IsEmptyElement

Ruft beim Überschreiben in einer abgeleiteten Klasse einen Wert ab, der angibt, ob der aktuelle Knoten ein leeres Element ist (z.B. <MyElement/>).When overridden in a derived class, gets a value indicating whether the current node is an empty element (for example, <MyElement/>).

Item[Int32] Item[Int32] Item[Int32] Item[Int32]

Ruft beim Überschreiben in einer abgeleiteten Klasse den Wert des Attributs mit dem angegebenen Index ab.When overridden in a derived class, gets the value of the attribute with the specified index.

Item[String, String] Item[String, String] Item[String, String] Item[String, String]

Ruft beim Überschreiben in einer abgeleiteten Klasse den Wert des Attributs mit dem angegebenen LocalName und NamespaceURI ab.When overridden in a derived class, gets the value of the attribute with the specified LocalName and NamespaceURI.

Item[String] Item[String] Item[String] Item[String]

Ruft beim Überschreiben in einer abgeleiteten Klasse den Wert des Attributs mit dem angegebenen Name ab.When overridden in a derived class, gets the value of the attribute with the specified Name.

LocalName LocalName LocalName LocalName

Ruft beim Überschreiben in einer abgeleiteten Klasse den lokalen Namen des aktuellen Knotens ab.When overridden in a derived class, gets the local name of the current node.

Name Name Name Name

Ruft beim Überschreiben in einer abgeleiteten Klasse den gekennzeichneten Namen des aktuellen Knotens ab.When overridden in a derived class, gets the qualified name of the current node.

NamespaceURI NamespaceURI NamespaceURI NamespaceURI

Ruft beim Überschreiben in einer abgeleiteten Klasse den Namespace-URI (entsprechend der Definition in der Namespacespezifikation des W3C) des Knotens ab, auf dem der Reader positioniert ist.When overridden in a derived class, gets the namespace URI (as defined in the W3C Namespace specification) of the node on which the reader is positioned.

NameTable NameTable NameTable NameTable

Ruft beim Überschreiben in einer abgeleiteten Klasse die XmlNameTable ab, die dieser Implementierung zugeordnet ist.When overridden in a derived class, gets the XmlNameTable associated with this implementation.

NodeType NodeType NodeType NodeType

Ruft beim Überschreiben in einer abgeleiteten Klasse den Typ des aktuellen Knotens ab.When overridden in a derived class, gets the type of the current node.

Prefix Prefix Prefix Prefix

Ruft beim Überschreiben in einer abgeleiteten Klasse das dem aktuellen Knoten zugeordnete Namespacepräfix ab.When overridden in a derived class, gets the namespace prefix associated with the current node.

QuoteChar QuoteChar QuoteChar QuoteChar

Ruft beim Überschreiben in einer abgeleiteten Klasse das Anführungszeichen ab, mit dem der Wert eines Attributknotens eingeschlossen wird.When overridden in a derived class, gets the quotation mark character used to enclose the value of an attribute node.

ReadState ReadState ReadState ReadState

Ruft beim Überschreiben in einer abgeleiteten Klasse den Zustand des Readers ab.When overridden in a derived class, gets the state of the reader.

SchemaInfo SchemaInfo SchemaInfo SchemaInfo

Ruft die Schemainformationen ab, die dem aktuellen Knoten nach der Schemavalidierung zugewiesen wurden.Gets the schema information that has been assigned to the current node as a result of schema validation.

Settings Settings Settings Settings

Ruft das zum Erstellen dieser XmlReaderSettings-Instanz verwendete XmlReader-Objekt ab.Gets the XmlReaderSettings object used to create this XmlReader instance.

Value Value Value Value

Ruft beim Überschreiben in einer abgeleiteten Klasse den Textwert des aktuellen Knotens ab.When overridden in a derived class, gets the text value of the current node.

ValueType ValueType ValueType ValueType

Ruft den CLR-Typ (Common Language Runtime) für den aktuellen Knoten ab.Gets The Common Language Runtime (CLR) type for the current node.

XmlLang XmlLang XmlLang XmlLang

Ruft beim Überschreiben in einer abgeleiteten Klasse den aktuellen xml:lang-Bereich ab.When overridden in a derived class, gets the current xml:lang scope.

XmlSpace XmlSpace XmlSpace XmlSpace

Ruft beim Überschreiben in einer abgeleiteten Klasse den aktuellen xml:space-Bereich ab.When overridden in a derived class, gets the current xml:space scope.

Methoden

Close() Close() Close() Close()

Ändert beim Überschreiben in einer abgeleiteten Klassen den ReadState in Closed.When overridden in a derived class, changes the ReadState to Closed.

Create(Stream) Create(Stream) Create(Stream) Create(Stream)

Erstellt mit dem angegebenen Stream mit den Standardeinstellungen eine neue XmlReader-Instanz.Creates a new XmlReader instance using the specified stream with default settings.

Create(Stream, XmlReaderSettings) Create(Stream, XmlReaderSettings) Create(Stream, XmlReaderSettings) Create(Stream, XmlReaderSettings)

Erstellt eine neue XmlReader-Instanz mit dem angegebenen Stream und den angegebenen Einstellungen.Creates a new XmlReader instance with the specified stream and settings.

Create(Stream, XmlReaderSettings, String) Create(Stream, XmlReaderSettings, String) Create(Stream, XmlReaderSettings, String) Create(Stream, XmlReaderSettings, String)

Erstellt mit dem angegebenen Stream, dem Basis-URI und den Einstellungen eine neue XmlReader-Instanz.Creates a new XmlReader instance using the specified stream, base URI, and settings.

Create(Stream, XmlReaderSettings, XmlParserContext) Create(Stream, XmlReaderSettings, XmlParserContext) Create(Stream, XmlReaderSettings, XmlParserContext) Create(Stream, XmlReaderSettings, XmlParserContext)

Erstellt mit dem angegebenen Stream, den Einstellungen und den Kontextinformationen für Analysezwecke eine neue XmlReader-Instanz.Creates a new XmlReader instance using the specified stream, settings, and context information for parsing.

Create(String) Create(String) Create(String) Create(String)

Erstellt eine neue XmlReader-Instanz mit angegebenem URI.Creates a new XmlReader instance with specified URI.

Create(String, XmlReaderSettings) Create(String, XmlReaderSettings) Create(String, XmlReaderSettings) Create(String, XmlReaderSettings)

Erstellt mit dem angegebenen URI und den angegebenen Einstellungen eine neue XmlReader-Instanz.Creates a new XmlReader instance by using the specified URI and settings.

Create(String, XmlReaderSettings, XmlParserContext) Create(String, XmlReaderSettings, XmlParserContext) Create(String, XmlReaderSettings, XmlParserContext) Create(String, XmlReaderSettings, XmlParserContext)

Erstellt mit dem angegebenen URI, den Einstellungen und den Kontextinformationen für Analysezwecke eine neue XmlReader-Instanz.Creates a new XmlReader instance by using the specified URI, settings, and context information for parsing.

Create(TextReader) Create(TextReader) Create(TextReader) Create(TextReader)

Erstellt mit dem angegebenen Text-Reader eine neue XmlReader-Instanz.Creates a new XmlReader instance by using the specified text reader.

Create(TextReader, XmlReaderSettings) Create(TextReader, XmlReaderSettings) Create(TextReader, XmlReaderSettings) Create(TextReader, XmlReaderSettings)

Erstellt mit dem angegebenen Text-Reader und den angegebenen Einstellungen eine neue XmlReader-Instanz.Creates a new XmlReader instance by using the specified text reader and settings.

Create(TextReader, XmlReaderSettings, String) Create(TextReader, XmlReaderSettings, String) Create(TextReader, XmlReaderSettings, String) Create(TextReader, XmlReaderSettings, String)

Erstellt mit dem angegebenen Text-Reader, den angegebenen Einstellungen und dem angegebenen Basis-URI eine neue XmlReader-Instanz.Creates a new XmlReader instance by using the specified text reader, settings, and base URI.

Create(TextReader, XmlReaderSettings, XmlParserContext) Create(TextReader, XmlReaderSettings, XmlParserContext) Create(TextReader, XmlReaderSettings, XmlParserContext) Create(TextReader, XmlReaderSettings, XmlParserContext)

Erstellt mit dem angegebenen Text-Reader, den Einstellungen und den Kontextinformationen für Analysezwecke eine neue XmlReader-Instanz.Creates a new XmlReader instance by using the specified text reader, settings, and context information for parsing.

Create(XmlReader, XmlReaderSettings) Create(XmlReader, XmlReaderSettings) Create(XmlReader, XmlReaderSettings) Create(XmlReader, XmlReaderSettings)

Erstellt mit dem angegebenen XML-Reader und den angegebenen Einstellungen eine neue XmlReader-Instanz.Creates a new XmlReader instance by using the specified XML reader and settings.

Dispose() Dispose() Dispose() Dispose()

Gibt alle von der aktuellen Instanz der XmlReader-Klasse verwendeten Ressourcen frei.Releases all resources used by the current instance of the XmlReader class.

Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

Gibt die von XmlReader verwendeten nicht verwalteten Ressourcen und optional die verwalteten Ressourcen frei.Releases the unmanaged resources used by the XmlReader and optionally releases the managed resources.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetAttribute(Int32) GetAttribute(Int32) GetAttribute(Int32) GetAttribute(Int32)

Ruft beim Überschreiben in einer abgeleiteten Klasse den Wert des Attributs mit dem angegebenen Index ab.When overridden in a derived class, gets the value of the attribute with the specified index.

GetAttribute(String) GetAttribute(String) GetAttribute(String) GetAttribute(String)

Ruft beim Überschreiben in einer abgeleiteten Klasse den Wert des Attributs mit dem angegebenen Name ab.When overridden in a derived class, gets the value of the attribute with the specified Name.

GetAttribute(String, String) GetAttribute(String, String) GetAttribute(String, String) GetAttribute(String, String)

Ruft beim Überschreiben in einer abgeleiteten Klasse den Wert des Attributs mit dem angegebenen LocalName und NamespaceURI ab.When overridden in a derived class, gets the value of the attribute with the specified LocalName and NamespaceURI.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Fungiert als Standardhashfunktion.Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Inherited from Object)
GetValueAsync() GetValueAsync() GetValueAsync() GetValueAsync()

Ruft den Wert des aktuellen Knotens asynchron ab.Asynchronously gets the value of the current node.

IsName(String) IsName(String) IsName(String) IsName(String)

Gibt einen Wert zurück, der angibt, ob das Zeichenfolgenargument ein gültiger XML-Name ist.Returns a value indicating whether the string argument is a valid XML name.

IsNameToken(String) IsNameToken(String) IsNameToken(String) IsNameToken(String)

Gibt einen Wert zurück, der angibt, ob das Zeichenfolgenargument ein gültiges XML-Namenstoken ist.Returns a value indicating whether or not the string argument is a valid XML name token.

IsStartElement() IsStartElement() IsStartElement() IsStartElement()

Ruft MoveToContent() auf und überprüft, ob der aktuelle Inhaltsknoten ein Starttag oder ein leeres Elementtag ist.Calls MoveToContent() and tests if the current content node is a start tag or empty element tag.

IsStartElement(String) IsStartElement(String) IsStartElement(String) IsStartElement(String)

Ruft MoveToContent() auf und überprüft, ob der aktuelle Inhaltsknoten ein Starttag oder ein leeres Elementtag ist und die Name-Eigenschaft des gefundenen Elements mit dem angegebenen Argument übereinstimmt.Calls MoveToContent() and tests if the current content node is a start tag or empty element tag and if the Name property of the element found matches the given argument.

IsStartElement(String, String) IsStartElement(String, String) IsStartElement(String, String) IsStartElement(String, String)

Ruft MoveToContent() auf und überprüft, ob der aktuelle Inhaltsknoten ein Starttag oder ein leeres Elementtag ist und ob die LocalName-Eigenschaft und die NamespaceURI-Eigenschaft des gefundenen Elements mit den angegebenen Zeichenfolgen übereinstimmen.Calls MoveToContent() and tests if the current content node is a start tag or empty element tag and if the LocalName and NamespaceURI properties of the element found match the given strings.

LookupNamespace(String) LookupNamespace(String) LookupNamespace(String) LookupNamespace(String)

Löst beim Überschreiben in einer abgeleiteten Klasse ein Namespacepräfix im Gültigkeitsbereich des aktuellen Elements auf.When overridden in a derived class, resolves a namespace prefix in the current element's scope.

MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Inherited from Object)
MoveToAttribute(Int32) MoveToAttribute(Int32) MoveToAttribute(Int32) MoveToAttribute(Int32)

Wechselt beim Überschreiben in einer abgeleiteten Klasse zum Attribut mit dem angegebenen Index.When overridden in a derived class, moves to the attribute with the specified index.

MoveToAttribute(String) MoveToAttribute(String) MoveToAttribute(String) MoveToAttribute(String)

Wechselt beim Überschreiben in einer abgeleiteten Klasse zum Attribut mit dem angegebenen Name.When overridden in a derived class, moves to the attribute with the specified Name.

MoveToAttribute(String, String) MoveToAttribute(String, String) MoveToAttribute(String, String) MoveToAttribute(String, String)

Wechselt beim Überschreiben in einer abgeleiteten Klasse zum Attribut mit dem angegebenen LocalName und NamespaceURI.When overridden in a derived class, moves to the attribute with the specified LocalName and NamespaceURI.

MoveToContent() MoveToContent() MoveToContent() MoveToContent()

Überprüft, ob der aktuelle Knoten ein Inhaltsknoten (Textknoten ohne Leerraum, CDATA-, Element-, EndElement-, EntityReference- oder EndEntity-Knoten) ist.Checks whether the current node is a content (non-white space text, CDATA, Element, EndElement, EntityReference, or EndEntity) node. Wenn der Knoten kein Inhaltsknoten ist, springt der Reader zum nächsten Inhaltsknoten oder an das Ende der Datei.If the node is not a content node, the reader skips ahead to the next content node or end of file. Knoten folgender Typen werden übersprungen: ProcessingInstruction, DocumentType, Comment, Whitespace und SignificantWhitespace.It skips over nodes of the following type: ProcessingInstruction, DocumentType, Comment, Whitespace, or SignificantWhitespace.

MoveToContentAsync() MoveToContentAsync() MoveToContentAsync() MoveToContentAsync()

Asynchrone Überprüfungen, ob der aktuelle Knoten ein Inhaltsknoten ist.Asynchronously checks whether the current node is a content node. Wenn der Knoten kein Inhaltsknoten ist, springt der Reader zum nächsten Inhaltsknoten oder an das Ende der Datei.If the node is not a content node, the reader skips ahead to the next content node or end of file.

MoveToElement() MoveToElement() MoveToElement() MoveToElement()

Wechselt beim Überschreiben in einer abgeleiteten Klasse zu dem Element, das den aktuellen Attributknoten enthält.When overridden in a derived class, moves to the element that contains the current attribute node.

MoveToFirstAttribute() MoveToFirstAttribute() MoveToFirstAttribute() MoveToFirstAttribute()

Wechselt beim Überschreiben in einer abgeleiteten Klasse zum ersten Attribut.When overridden in a derived class, moves to the first attribute.

MoveToNextAttribute() MoveToNextAttribute() MoveToNextAttribute() MoveToNextAttribute()

Wechselt beim Überschreiben in einer abgeleiteten Klasse zum nächsten Attribut.When overridden in a derived class, moves to the next attribute.

Read() Read() Read() Read()

Liest beim Überschreiben in einer abgeleiteten Klasse den nächsten Knoten aus dem Stream.When overridden in a derived class, reads the next node from the stream.

ReadAsync() ReadAsync() ReadAsync() ReadAsync()

Liest den nächsten Knoten aus dem Stream asynchron.Asynchronously reads the next node from the stream.

ReadAttributeValue() ReadAttributeValue() ReadAttributeValue() ReadAttributeValue()

Löst beim Überschreiben in einer abgeleiteten Klasse den Attributwert in einen oder mehrere Knoten vom Typ Text, EntityReference oder EndEntity auf.When overridden in a derived class, parses the attribute value into one or more Text, EntityReference, or EndEntity nodes.

ReadContentAs(Type, IXmlNamespaceResolver) ReadContentAs(Type, IXmlNamespaceResolver) ReadContentAs(Type, IXmlNamespaceResolver) ReadContentAs(Type, IXmlNamespaceResolver)

Liest den Inhalt als Objekt vom angegebenen Typ.Reads the content as an object of the type specified.

ReadContentAsAsync(Type, IXmlNamespaceResolver) ReadContentAsAsync(Type, IXmlNamespaceResolver) ReadContentAsAsync(Type, IXmlNamespaceResolver) ReadContentAsAsync(Type, IXmlNamespaceResolver)

Liest den Inhalt asynchron als Objekt vom angegebenen Typ.Asynchronously reads the content as an object of the type specified.

ReadContentAsBase64(Byte[], Int32, Int32) ReadContentAsBase64(Byte[], Int32, Int32) ReadContentAsBase64(Byte[], Int32, Int32) ReadContentAsBase64(Byte[], Int32, Int32)

Liest den Inhalt und gibt die Base64-decodierten binären Bytes zurück.Reads the content and returns the Base64 decoded binary bytes.

ReadContentAsBase64Async(Byte[], Int32, Int32) ReadContentAsBase64Async(Byte[], Int32, Int32) ReadContentAsBase64Async(Byte[], Int32, Int32) ReadContentAsBase64Async(Byte[], Int32, Int32)

Liest den Inhalt asynchron und gibt die Base64-decodierten binären Bytes zurück.Asynchronously reads the content and returns the Base64 decoded binary bytes.

ReadContentAsBinHex(Byte[], Int32, Int32) ReadContentAsBinHex(Byte[], Int32, Int32) ReadContentAsBinHex(Byte[], Int32, Int32) ReadContentAsBinHex(Byte[], Int32, Int32)

Liest den Inhalt und gibt die BinHex-decodierten binären Bytes zurück.Reads the content and returns the BinHex decoded binary bytes.

ReadContentAsBinHexAsync(Byte[], Int32, Int32) ReadContentAsBinHexAsync(Byte[], Int32, Int32) ReadContentAsBinHexAsync(Byte[], Int32, Int32) ReadContentAsBinHexAsync(Byte[], Int32, Int32)

Liest den Inhalt asynchron und gibt die BinHex-decodierten binären Bytes zurück.Asynchronously reads the content and returns the BinHex decoded binary bytes.

ReadContentAsBoolean() ReadContentAsBoolean() ReadContentAsBoolean() ReadContentAsBoolean()

Liest den Textinhalt an der aktuellen Position als Boolean.Reads the text content at the current position as a Boolean.

ReadContentAsDateTime() ReadContentAsDateTime() ReadContentAsDateTime() ReadContentAsDateTime()

Liest den Textinhalt an der aktuellen Position als DateTime-Objekt.Reads the text content at the current position as a DateTime object.

ReadContentAsDateTimeOffset() ReadContentAsDateTimeOffset() ReadContentAsDateTimeOffset() ReadContentAsDateTimeOffset()

Liest den Textinhalt an der aktuellen Position als DateTimeOffset-Objekt.Reads the text content at the current position as a DateTimeOffset object.

ReadContentAsDecimal() ReadContentAsDecimal() ReadContentAsDecimal() ReadContentAsDecimal()

Liest den Textinhalt an der aktuellen Position als Decimal-Objekt.Reads the text content at the current position as a Decimal object.

ReadContentAsDouble() ReadContentAsDouble() ReadContentAsDouble() ReadContentAsDouble()

Liest den Textinhalt an der aktuellen Position als Gleitkommazahl mit doppelter Genauigkeit.Reads the text content at the current position as a double-precision floating-point number.

ReadContentAsFloat() ReadContentAsFloat() ReadContentAsFloat() ReadContentAsFloat()

Liest den Textinhalt an der aktuellen Position als Gleitkommazahl mit einfacher Genauigkeit.Reads the text content at the current position as a single-precision floating point number.

ReadContentAsInt() ReadContentAsInt() ReadContentAsInt() ReadContentAsInt()

Liest den Textinhalt an der aktuellen Position als 32-Bit-Ganzzahl mit Vorzeichen.Reads the text content at the current position as a 32-bit signed integer.

ReadContentAsLong() ReadContentAsLong() ReadContentAsLong() ReadContentAsLong()

Liest den Textinhalt an der aktuellen Position als 64-Bit-Ganzzahl mit Vorzeichen.Reads the text content at the current position as a 64-bit signed integer.

ReadContentAsObject() ReadContentAsObject() ReadContentAsObject() ReadContentAsObject()

Liest den Textinhalt an der aktuellen Position als Object.Reads the text content at the current position as an Object.

ReadContentAsObjectAsync() ReadContentAsObjectAsync() ReadContentAsObjectAsync() ReadContentAsObjectAsync()

Liest den Textinhalt asynchron an der aktuellen Position als ein Object.Asynchronously reads the text content at the current position as an Object.

ReadContentAsString() ReadContentAsString() ReadContentAsString() ReadContentAsString()

Liest den Textinhalt an der aktuellen Position als String-Objekt.Reads the text content at the current position as a String object.

ReadContentAsStringAsync() ReadContentAsStringAsync() ReadContentAsStringAsync() ReadContentAsStringAsync()

Liest den Textinhalt asynchron an der aktuellen Position als String-Objekt.Asynchronously reads the text content at the current position as a String object.

ReadElementContentAs(Type, IXmlNamespaceResolver) ReadElementContentAs(Type, IXmlNamespaceResolver) ReadElementContentAs(Type, IXmlNamespaceResolver) ReadElementContentAs(Type, IXmlNamespaceResolver)

Liest den Elementinhalt als angeforderten Typ.Reads the element content as the requested type.

ReadElementContentAs(Type, IXmlNamespaceResolver, String, String) ReadElementContentAs(Type, IXmlNamespaceResolver, String, String) ReadElementContentAs(Type, IXmlNamespaceResolver, String, String) ReadElementContentAs(Type, IXmlNamespaceResolver, String, String)

Überprüft, ob der angegebene lokale Name und der angegebene Namespace-URI mit denen des aktuellen Elements übereinstimmen, und liest dann den Elementinhalt als angeforderten Typ.Checks that the specified local name and namespace URI matches that of the current element, then reads the element content as the requested type.

ReadElementContentAsAsync(Type, IXmlNamespaceResolver) ReadElementContentAsAsync(Type, IXmlNamespaceResolver) ReadElementContentAsAsync(Type, IXmlNamespaceResolver) ReadElementContentAsAsync(Type, IXmlNamespaceResolver)

Liest das Elementinhalt asynchron als angeforderten Typ.Asynchronously reads the element content as the requested type.

ReadElementContentAsBase64(Byte[], Int32, Int32) ReadElementContentAsBase64(Byte[], Int32, Int32) ReadElementContentAsBase64(Byte[], Int32, Int32) ReadElementContentAsBase64(Byte[], Int32, Int32)

Liest das Element und decodiert den Base64-Inhalt.Reads the element and decodes the Base64 content.

ReadElementContentAsBase64Async(Byte[], Int32, Int32) ReadElementContentAsBase64Async(Byte[], Int32, Int32) ReadElementContentAsBase64Async(Byte[], Int32, Int32) ReadElementContentAsBase64Async(Byte[], Int32, Int32)

Liest das Element asynchron und decodiert den Base64-Inhalt.Asynchronously reads the element and decodes the Base64 content.

ReadElementContentAsBinHex(Byte[], Int32, Int32) ReadElementContentAsBinHex(Byte[], Int32, Int32) ReadElementContentAsBinHex(Byte[], Int32, Int32) ReadElementContentAsBinHex(Byte[], Int32, Int32)

Liest das Element und decodiert den BinHex-Inhalt.Reads the element and decodes the BinHex content.

ReadElementContentAsBinHexAsync(Byte[], Int32, Int32) ReadElementContentAsBinHexAsync(Byte[], Int32, Int32) ReadElementContentAsBinHexAsync(Byte[], Int32, Int32) ReadElementContentAsBinHexAsync(Byte[], Int32, Int32)

Liest das Element asynchron und decodiert den BinHex-Inhalt.Asynchronously reads the element and decodes the BinHex content.

ReadElementContentAsBoolean() ReadElementContentAsBoolean() ReadElementContentAsBoolean() ReadElementContentAsBoolean()

Liest das aktuelle Element und gibt den Inhalt als Boolean-Objekt zurück.Reads the current element and returns the contents as a Boolean object.

ReadElementContentAsBoolean(String, String) ReadElementContentAsBoolean(String, String) ReadElementContentAsBoolean(String, String) ReadElementContentAsBoolean(String, String)

Überprüft, ob der angegebene lokale Name und der angegebene Namespace-URI mit denen des aktuellen Elements übereinstimmen, liest dann das aktuelle Element und gibt den Inhalt als Boolean-Objekt zurück.Checks that the specified local name and namespace URI matches that of the current element, then reads the current element and returns the contents as a Boolean object.

ReadElementContentAsDateTime() ReadElementContentAsDateTime() ReadElementContentAsDateTime() ReadElementContentAsDateTime()

Liest das aktuelle Element und gibt den Inhalt als DateTime-Objekt zurück.Reads the current element and returns the contents as a DateTime object.

ReadElementContentAsDateTime(String, String) ReadElementContentAsDateTime(String, String) ReadElementContentAsDateTime(String, String) ReadElementContentAsDateTime(String, String)

Überprüft, ob der angegebene lokale Name und der angegebene Namespace-URI mit denen des aktuellen Elements übereinstimmen, liest dann das aktuelle Element und gibt den Inhalt als DateTime-Objekt zurück.Checks that the specified local name and namespace URI matches that of the current element, then reads the current element and returns the contents as a DateTime object.

ReadElementContentAsDecimal() ReadElementContentAsDecimal() ReadElementContentAsDecimal() ReadElementContentAsDecimal()

Liest das aktuelle Element und gibt den Inhalt als Decimal-Objekt zurück.Reads the current element and returns the contents as a Decimal object.

ReadElementContentAsDecimal(String, String) ReadElementContentAsDecimal(String, String) ReadElementContentAsDecimal(String, String) ReadElementContentAsDecimal(String, String)

Überprüft, ob der angegebene lokale Name und der angegebene Namespace-URI mit denen des aktuellen Elements übereinstimmen, liest dann das aktuelle Element und gibt den Inhalt als Decimal-Objekt zurück.Checks that the specified local name and namespace URI matches that of the current element, then reads the current element and returns the contents as a Decimal object.

ReadElementContentAsDouble() ReadElementContentAsDouble() ReadElementContentAsDouble() ReadElementContentAsDouble()

Liest das aktuelle Element und gibt den Inhalt als Gleitkommazahl mit doppelter Genauigkeit zurück.Reads the current element and returns the contents as a double-precision floating-point number.

ReadElementContentAsDouble(String, String) ReadElementContentAsDouble(String, String) ReadElementContentAsDouble(String, String) ReadElementContentAsDouble(String, String)

Überprüft, ob der angegebene lokale Name und der angegebene Namespace-URI mit denen des aktuellen Elements übereinstimmen, liest dann das aktuelle Element und gibt den Inhalt als Gleitkommazahl mit doppelter Genauigkeit zurück.Checks that the specified local name and namespace URI matches that of the current element, then reads the current element and returns the contents as a double-precision floating-point number.

ReadElementContentAsFloat() ReadElementContentAsFloat() ReadElementContentAsFloat() ReadElementContentAsFloat()

Liest das aktuelle Element und gibt den Inhalt als Gleitkommazahl mit einfacher Genauigkeit zurück.Reads the current element and returns the contents as single-precision floating-point number.

ReadElementContentAsFloat(String, String) ReadElementContentAsFloat(String, String) ReadElementContentAsFloat(String, String) ReadElementContentAsFloat(String, String)

Überprüft, ob der angegebene lokale Name und der angegebene Namespace-URI mit denen des aktuellen Elements übereinstimmen, liest dann das aktuelle Element und gibt den Inhalt als Gleitkommazahl mit einfacher Genauigkeit zurück.Checks that the specified local name and namespace URI matches that of the current element, then reads the current element and returns the contents as a single-precision floating-point number.

ReadElementContentAsInt() ReadElementContentAsInt() ReadElementContentAsInt() ReadElementContentAsInt()

Liest das aktuelle Element und gibt den Inhalt als 32-Bit-Ganzzahl mit Vorzeichen zurück.Reads the current element and returns the contents as a 32-bit signed integer.

ReadElementContentAsInt(String, String) ReadElementContentAsInt(String, String) ReadElementContentAsInt(String, String) ReadElementContentAsInt(String, String)

Überprüft, ob der angegebene lokale Name und der angegebene Namespace-URI mit denen des aktuellen Elements übereinstimmen, liest dann das aktuelle Element und gibt den Inhalt als 32-Bit-Ganzzahl mit Vorzeichen zurück.Checks that the specified local name and namespace URI matches that of the current element, then reads the current element and returns the contents as a 32-bit signed integer.

ReadElementContentAsLong() ReadElementContentAsLong() ReadElementContentAsLong() ReadElementContentAsLong()

Liest das aktuelle Element und gibt den Inhalt als 64-Bit-Ganzzahl mit Vorzeichen zurück.Reads the current element and returns the contents as a 64-bit signed integer.

ReadElementContentAsLong(String, String) ReadElementContentAsLong(String, String) ReadElementContentAsLong(String, String) ReadElementContentAsLong(String, String)

Überprüft, ob der angegebene lokale Name und der angegebene Namespace-URI mit denen des aktuellen Elements übereinstimmen, liest dann das aktuelle Element und gibt den Inhalt als 64-Bit-Ganzzahl mit Vorzeichen zurück.Checks that the specified local name and namespace URI matches that of the current element, then reads the current element and returns the contents as a 64-bit signed integer.

ReadElementContentAsObject() ReadElementContentAsObject() ReadElementContentAsObject() ReadElementContentAsObject()

Liest das aktuelle Element und gibt den Inhalt als Object zurück.Reads the current element and returns the contents as an Object.

ReadElementContentAsObject(String, String) ReadElementContentAsObject(String, String) ReadElementContentAsObject(String, String) ReadElementContentAsObject(String, String)

Überprüft, ob der angegebene lokale Name und der angegebene Namespace-URI mit denen des aktuellen Elements übereinstimmen, liest dann das aktuelle Element und gibt den Inhalt als Object zurück.Checks that the specified local name and namespace URI matches that of the current element, then reads the current element and returns the contents as an Object.

ReadElementContentAsObjectAsync() ReadElementContentAsObjectAsync() ReadElementContentAsObjectAsync() ReadElementContentAsObjectAsync()

Liest das aktuelle Element asynchron und gibt den Inhalt als Object zurück.Asynchronously reads the current element and returns the contents as an Object.

ReadElementContentAsString() ReadElementContentAsString() ReadElementContentAsString() ReadElementContentAsString()

Liest das aktuelle Element und gibt den Inhalt als String-Objekt zurück.Reads the current element and returns the contents as a String object.

ReadElementContentAsString(String, String) ReadElementContentAsString(String, String) ReadElementContentAsString(String, String) ReadElementContentAsString(String, String)

Überprüft, ob der angegebene lokale Name und der angegebene Namespace-URI mit denen des aktuellen Elements übereinstimmen, liest dann das aktuelle Element und gibt den Inhalt als String-Objekt zurück.Checks that the specified local name and namespace URI matches that of the current element, then reads the current element and returns the contents as a String object.

ReadElementContentAsStringAsync() ReadElementContentAsStringAsync() ReadElementContentAsStringAsync() ReadElementContentAsStringAsync()

Liest das aktuelle Element asynchron und gibt den Inhalt als String-Objekt zurück.Asynchronously reads the current element and returns the contents as a String object.

ReadElementString() ReadElementString() ReadElementString() ReadElementString()

Liest ein Nur-Text-Element.Reads a text-only element. Sie sollten stattdessen allerdings die ReadElementContentAsString()-Methode verwenden, da sie eine einfachere Möglichkeit zum Verarbeiten dieses Vorgangs bietet.However, we recommend that you use the ReadElementContentAsString() method instead, because it provides a more straightforward way to handle this operation.

ReadElementString(String) ReadElementString(String) ReadElementString(String) ReadElementString(String)

Überprüft vor dem Lesen eines Nur-Text-Elements, ob die Name-Eigenschaft des gefundenen Elements mit der angegebenen Zeichenfolge übereinstimmt.Checks that the Name property of the element found matches the given string before reading a text-only element. Sie sollten stattdessen allerdings die ReadElementContentAsString()-Methode verwenden, da sie eine einfachere Möglichkeit zum Verarbeiten dieses Vorgangs bietet.However, we recommend that you use the ReadElementContentAsString() method instead, because it provides a more straightforward way to handle this operation.

ReadElementString(String, String) ReadElementString(String, String) ReadElementString(String, String) ReadElementString(String, String)

Überprüft vor dem Lesen eines Nur-Text-Elements, ob die LocalName-Eigenschaft und die NamespaceURI-Eigenschaft des gefundenen Elements mit den angegebenen Zeichenfolgen übereinstimmen.Checks that the LocalName and NamespaceURI properties of the element found matches the given strings before reading a text-only element. Sie sollten stattdessen allerdings die ReadElementContentAsString(String, String)-Methode verwenden, da sie eine einfachere Möglichkeit zum Verarbeiten dieses Vorgangs bietet.However, we recommend that you use the ReadElementContentAsString(String, String) method instead, because it provides a more straightforward way to handle this operation.

ReadEndElement() ReadEndElement() ReadEndElement() ReadEndElement()

Überprüft, ob der aktuelle Inhaltsknoten ein Endtag ist, und verschiebt den Reader auf den nächsten Knoten.Checks that the current content node is an end tag and advances the reader to the next node.

ReadInnerXml() ReadInnerXml() ReadInnerXml() ReadInnerXml()

Liest beim Überschreiben in einer abgeleiteten Klasse den gesamten Inhalt, einschließlich Markup, als Zeichenfolge.When overridden in a derived class, reads all the content, including markup, as a string.

ReadInnerXmlAsync() ReadInnerXmlAsync() ReadInnerXmlAsync() ReadInnerXmlAsync()

Liest asynchron den gesamten Inhalt, einschließlich Markup als Zeichenfolge.Asynchronously reads all the content, including markup, as a string.

ReadOuterXml() ReadOuterXml() ReadOuterXml() ReadOuterXml()

Ruft beim Überschreiben in einer abgeleiteten Klasse den Inhalt (einschließlich Markup) ab, der diesen Knoten und alle untergeordneten Elemente darstellt.When overridden in a derived class, reads the content, including markup, representing this node and all its children.

ReadOuterXmlAsync() ReadOuterXmlAsync() ReadOuterXmlAsync() ReadOuterXmlAsync()

Liest den Inhalt, einschließlich Markup, das diesen Knoten und alle untergeordneten Elemente darstellt, asynchron.Asynchronously reads the content, including markup, representing this node and all its children.

ReadStartElement() ReadStartElement() ReadStartElement() ReadStartElement()

Überprüft, ob der aktuelle Knoten ein Element ist, und verschiebt den Reader auf den nächsten Knoten.Checks that the current node is an element and advances the reader to the next node.

ReadStartElement(String) ReadStartElement(String) ReadStartElement(String) ReadStartElement(String)

Überprüft, ob der aktuelle Inhaltsknoten ein Element mit dem angegebenen Name ist, und verschiebt den Reader auf den nächsten Knoten.Checks that the current content node is an element with the given Name and advances the reader to the next node.

ReadStartElement(String, String) ReadStartElement(String, String) ReadStartElement(String, String) ReadStartElement(String, String)

Überprüft, ob der aktuelle Inhaltsknoten ein Element mit dem angegebenen LocalName und NamespaceURI ist, und verschiebt den Reader auf den nächsten Knoten.Checks that the current content node is an element with the given LocalName and NamespaceURI and advances the reader to the next node.

ReadString() ReadString() ReadString() ReadString()

Liest beim Überschreiben in einer abgeleiteten Klasse den Inhalt eines Element- oder Textknotens als Zeichenfolge.When overridden in a derived class, reads the contents of an element or text node as a string. Sie sollten stattdessen allerdings die ReadElementContentAsString-Methode verwenden, da sie eine einfachere Möglichkeit zum Verarbeiten dieses Vorgangs bietet.However, we recommend that you use the ReadElementContentAsString method instead, because it provides a more straightforward way to handle this operation.

ReadSubtree() ReadSubtree() ReadSubtree() ReadSubtree()

Gibt eine neue XmlReader-Instanz zurück, die zum Lesen des aktuellen Knotens und aller Nachfolgerknoten verwendet werden kann.Returns a new XmlReader instance that can be used to read the current node, and all its descendants.

ReadToDescendant(String) ReadToDescendant(String) ReadToDescendant(String) ReadToDescendant(String)

Verschiebt den XmlReader auf das nächste Nachfolgerelement mit dem angegebenen qualifizierten Namen.Advances the XmlReader to the next descendant element with the specified qualified name.

ReadToDescendant(String, String) ReadToDescendant(String, String) ReadToDescendant(String, String) ReadToDescendant(String, String)

Verschiebt den XmlReader auf das nächste Nachfolgerelement mit dem angegebenen lokalen Namen und dem angegebenen Namespace-URI.Advances the XmlReader to the next descendant element with the specified local name and namespace URI.

ReadToFollowing(String) ReadToFollowing(String) ReadToFollowing(String) ReadToFollowing(String)

Liest, bis ein Element mit dem angegebenen qualifizierten Namen gefunden wird.Reads until an element with the specified qualified name is found.

ReadToFollowing(String, String) ReadToFollowing(String, String) ReadToFollowing(String, String) ReadToFollowing(String, String)

Liest, bis ein Element mit dem angegebenen lokalen Namen und dem angegebenen Namespace-URI gefunden wird.Reads until an element with the specified local name and namespace URI is found.

ReadToNextSibling(String) ReadToNextSibling(String) ReadToNextSibling(String) ReadToNextSibling(String)

Verschiebt den XmlReader auf das nächste nebengeordnete Element mit dem angegebenen qualifizierten Namen.Advances the XmlReader to the next sibling element with the specified qualified name.

ReadToNextSibling(String, String) ReadToNextSibling(String, String) ReadToNextSibling(String, String) ReadToNextSibling(String, String)

Verschiebt den XmlReader auf das nächste nebengeordnete Element mit dem angegebenen lokalen Namen und dem angegebenen Namespace-URI.Advances the XmlReader to the next sibling element with the specified local name and namespace URI.

ReadValueChunk(Char[], Int32, Int32) ReadValueChunk(Char[], Int32, Int32) ReadValueChunk(Char[], Int32, Int32) ReadValueChunk(Char[], Int32, Int32)

Liest umfangreiche Streams von Text, der in ein XML-Dokument eingebettet ist.Reads large streams of text embedded in an XML document.

ReadValueChunkAsync(Char[], Int32, Int32) ReadValueChunkAsync(Char[], Int32, Int32) ReadValueChunkAsync(Char[], Int32, Int32) ReadValueChunkAsync(Char[], Int32, Int32)

Liest asynchron umfangreiche Streams von Text, der in ein XML-Dokument eingebettet ist.Asynchronously reads large streams of text embedded in an XML document.

ResolveEntity() ResolveEntity() ResolveEntity() ResolveEntity()

Löst beim Überschreiben in einer abgeleiteten Klasse den Entitätsverweis für EntityReference-Knoten auf.When overridden in a derived class, resolves the entity reference for EntityReference nodes.

Skip() Skip() Skip() Skip()

Überspringt die untergeordneten Elemente des aktuellen Knotens.Skips the children of the current node.

SkipAsync() SkipAsync() SkipAsync() SkipAsync()

Überspringt die untergeordneten Elemente des aktuellen Knotens asynchron.Asynchronously skips the children of the current node.

ToString() ToString() ToString() ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.Returns a string that represents the current object.

(Inherited from Object)

Explizite Schnittstellenimplementierungen

IDisposable.Dispose() IDisposable.Dispose() IDisposable.Dispose() IDisposable.Dispose()

Eine Beschreibung dieses Members finden Sie unter Dispose().For a description of this member, see Dispose().

Gilt für:

Siehe auch