XML-Dokumente und XML-Daten

.NET Framework bietet eine umfangreiche und integrierte Gruppe von Klassen, mit denen auf einfache Weise XML-fähige Apps erstellt werden können. Die Klassen in den folgenden Namespaces unterstützen das Analysieren und Schreiben von XML, das Bearbeiten von XML-Daten im Arbeitsspeicher, die Datenvalidierung und die XSLT-Transformation.

Suchen Sie im .NET-API-Browser nach „System.Xml“, um eine vollständige Liste zu erhalten.

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

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

  • Produktivität.LINQ to XML (C#) und LINQ to XML (Visual Basic) erleichtern die Programmierung mit XML und zeichnen sich durch ein Abfrageverhalten aus, das SQL ähnelt.

  • Erweiterungen. Die XML-Klassen in .NET Framework können mithilfe abstrakter Basisklassen und virtueller Methoden erweitert werden. So könnten Sie z. B. eine von der XmlUrlResolver-Klasse abgeleitete Klasse erstellen, durch die der Cachedatenstrom auf dem lokalen Datenträger gespeichert wird.

  • Architektur mit austauschbaren Komponenten. In der Architektur von .NET Framework können Komponenten gegenseitig voneinander Gebrauch machen und Daten zwischen Komponenten gestreamt werden. Beispielsweise kann ein Datenspeicher, z. B. ein XPathDocument-Objekt oder ein XmlDocument-Objekt, mit der XslCompiledTransform-Klasse transformiert werden. Anschließend kann die Ausgabe entweder in einen anderen Speicher gestreamt oder als Datenstrom von einem Webdienst zurückgegeben werden.

  • Leistung. Zur Verbesserung der App-Leistung unterstützen einige XML-Klassen in .NET Framework ein auf Streaming basierendes Modell mit folgenden Merkmalen:

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

    • Vorwärtsvalidierung (XmlReader)

    • Cursornavigation, die die Knotenerstellung auf einen einzelnen virtuellen Knoten reduziert und gleichzeitig den wahlfreien Zugriff auf das Dokument ermöglicht (XPathNavigator)

    Falls XSLT-Verarbeitung erforderlich ist, können Sie die Leistung mithilfe der XPathDocument-Klasse verbessern. Sie stellt einen optimierten, schreibgeschützten Speicher für XPath-Abfragen dar, der für die effiziente Zusammenarbeit mit der XslCompiledTransform-Klasse ausgelegt ist.

  • Integration in ADO.NET. Die XML-Klassen und ADO.NET sind nahtlos integriert und schaffen die Verbindung zwischen relationalen Daten und XML. Die DataSet-Klasse ist ein speicherinterner Cache für Daten, die aus einer Datenbank abgerufen wurden. Die DataSet-Klasse ist in der Lage, mithilfe der XmlReader-Klasse und der XmlWriter-Klasse XML zu lesen und zu schreiben, die zugehörige interne relationale Schemastruktur als XML-Schemas (XSD) beizubehalten und die Schemastruktur eines XML-Dokuments abzuleiten.

In diesem Abschnitt

XML-Verarbeitungsoptionen Erläutert die Optionen zum Verarbeiten 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 (auf dem W3C-Dokumentobjektmodell basierende) XmlDocument-Klasse und die (auf dem XPath-Datenmodell) basierende XPathDocument-Klasse.

XSLT Transformations (XSLT-Transformationen)
In diesem Abschnitt wird die Verwendung des XSLT-Prozessors beschrieben.

XML Schema Object Model (SOM) (XML-Schemaobjektmodell (SOM))
In diesem Abschnitt werden die Klassen beschrieben, mit denen XML-Schemas (XSD) erstellt und bearbeitet werden, indem eine XmlSchema-Klasse zum Laden und Bearbeiten eines Schemas bereitgestellt wird.

XML-Integration mit relationalen Daten und ADO.NET
In diesem Abschnitt wird beschrieben, wie .NET Framework einen synchronen Echtzeitzugriff auf die relationale und die hierarchische Darstellung von Daten über das DataSet-Objekt und das XmlDataDocument-Objekt ermöglicht.

Managing Namespaces in an XML Document (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 die Zuordnung von XML-Datentypen zu CLR-Typen, die Konvertierung von XML-Datentypen und andere in den System.Xml-Klassen enthaltene Funktionen zur Unterstützung von Typen.

ADO.NET
Hier erhalten Sie Informationen über den Zugriff auf Daten mit ADO.NET.

Security
Dieser Abschnitt stellt eine Übersicht über das Sicherheitssystem von .NET Framework bereit.