Freigeben über


XML-Dokumente und -Daten

.NET bietet einen umfassenden und integrierten Satz von Klassen, mit denen Sie XML-fähige Apps problemlos erstellen können. Die Klassen in den folgenden Namespaces unterstützen das Analysieren und Schreiben von XML-Daten, das Bearbeiten von XML-Daten im Arbeitsspeicher, der Datenüberprüfung und der XSLT-Transformation.

Suchen Sie für eine vollständige Liste im .NET-API-Browser nach "System.Xml".

Die Klassen in diesen Namespaces unterstützen Empfehlungen des World Wide Web Consortium (W3C). Beispiel:

Die XML-Klassen in .NET Framework bieten folgende Vorteile:

  • Produktivität.LINQ to XML (C#) und LINQ to XML (Visual Basic) erleichtert das Programmieren mit XML und bietet eine Abfrageerfahrung, die SQL ähnelt.

  • Dehnbarkeit. Die XML-Klassen im .NET Framework sind über die Verwendung abstrakter Basisklassen und virtueller Methoden erweiterbar. Sie können beispielsweise eine abgeleitete Klasse der XmlUrlResolver Klasse erstellen, die den Cachedatenstrom auf dem lokalen Datenträger speichert.

  • Architektur mit austauschbaren Komponenten. .NET Framework bietet eine Architektur, in der Komponenten miteinander verwendet werden können, und Daten können zwischen Komponenten gestreamt werden. Beispielsweise kann ein Datenspeicher, z. B. ein XPathDocument Objekt, XmlDocument mit der XslCompiledTransform Klasse transformiert werden, und die Ausgabe kann dann entweder in einen anderen Speicher gestreamt oder als Datenstrom von einem Webdienst zurückgegeben werden.

  • Leistung Für eine bessere App-Leistung unterstützen einige XML-Klassen im .NET Framework ein streamingbasiertes Modell mit den folgenden Merkmalen:

    • Minimale Zwischenspeicherung für die pullbasierte Vorwärtsanalyse (XmlReader)

    • Vorwärtsvalidierung (XmlReader)

    • Navigation mit Cursorstil, die die Erstellung von Knoten auf einen einzigen virtuellen Knoten minimiert, indem sie zufälligen Zugriff auf das Dokument (XPathNavigator) ermöglicht.

    Um eine bessere Leistung zu erzielen, wenn XSLT-Verarbeitung erforderlich ist, können Sie die Klasse verwenden, bei der XPathDocument es sich um einen optimierten schreibgeschützten Speicher für XPath-Abfragen handelt, die so konzipiert sind, dass sie effizient mit der XslCompiledTransform Klasse arbeiten können.

  • Integration mit ADO.NET. Die XML-Klassen und ADO.NET sind eng integriert, um relationale Daten und XML zusammenzuführen. Die DataSet Klasse ist ein Speichercache von Daten, die aus einer Datenbank abgerufen wurden. Die DataSet-Klasse kann XML lesen und schreiben, indem sie die XmlReader- und XmlWriter-Klassen verwendet, um ihre interne relationale Schemastruktur als XML-Schemas (XSD) beizubehalten und die Schemastruktur eines XML-Dokuments abzuleiten.

In diesem Abschnitt

XML-Verarbeitungsoptionen Erläutert Optionen für die Verarbeitung von XML-Daten.

Verarbeiten von XML-Daten im Arbeitsspeicher Erläutert die drei Modelle für die Verarbeitung von XML-Daten im Arbeitsspeicher: LINQ to XML (C#) und LINQ to XML (Visual Basic), die XmlDocument Klasse (basierend auf dem W3C-Dokumentobjektmodell) und die XPathDocument Klasse (basierend auf dem XPath-Datenmodell).

XSLT-Transformationen
Beschreibt die Verwendung des XSLT-Prozessors.

XML-Schemaobjektmodell (SOM)
Beschreibt die Klassen zum Erstellen und Bearbeiten von XML-Schemas (XSD), indem eine XmlSchema Klasse zum Laden und Bearbeiten eines Schemas bereitgestellt wird.

XML-Integration mit relationalen Daten und ADO.NET
Beschreibt, wie .NET Framework den synchronen Zugriff auf die relationalen und hierarchischen Darstellungen von Daten über das DataSet Objekt und das XmlDataDocument Objekt ermöglicht.

Verwalten von Namespaces in einem XML-Dokument
Beschreibt, wie die XmlNamespaceManager Klasse zum Speichern und Verwalten von Namespaceinformationen verwendet wird.

Type Support in the System.Xml Classes (Typenunterstützung in den System.Xml-Klassen)
Beschreibt, wie XML-Datentypen CLR-Typen zugeordnet werden, wie XML-Datentypen konvertiert werden, und andere Typenunterstützungsfeatures in den System.Xml Klassen.

ADO.NET
Enthält Informationen zum Zugreifen auf Daten mithilfe von ADO.NET.

Sicherheit
Bietet eine Übersicht über das .NET Framework-Sicherheitssystem.