Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

DataSet.ReadXml-Methode: (TextReader, XmlReadMode)

 

Veröffentlicht: Oktober 2016

Liest das XML-Schema und die Daten in der DataSet unter Verwendung des angegebenen System.IO.TextReader und XmlReadMode.

Namespace:   System.Data
Assembly:  System.Data (in System.Data.dll)

public XmlReadMode ReadXml(
	TextReader reader,
	XmlReadMode mode
)

Parameter

reader
Type: System.IO.TextReader

Die TextReader aus dem gelesen.

mode
Type: System.Data.XmlReadMode

Einer der XmlReadMode-Werte.

Rückgabewert

Type: System.Data.XmlReadMode

Die XmlReadMode verwendet, um die Daten zu lesen.

Die ReadXml -Methode bietet eine Möglichkeit, entweder ausschließlich Daten zu lesen oder Daten und Schema in ein DataSet aus einem XML-Dokument, während die ReadXmlSchema Methode liest nur das Schema. Um Schemas und Daten zu lesen, verwenden Sie eine der der ReadXML Überladungen, die enthält die mode -Parameter, und legen Sie seinen Wert auf ReadSchema.

Beachten Sie, dass für gilt die WriteXml und WriteXmlSchema Methoden bzw.. Zum Schreiben von XML-Daten oder Schema und Daten aus der DataSet, verwenden Sie die WriteXml Methode. Um nur das Schema zu schreiben, verwenden Sie die WriteXmlSchema Methode.

System_CAPS_noteHinweis

Eine InvalidOperationException wird ausgelöst, wenn der Spaltentyp in der DataRow die gelesen oder geschrieben implementiert IDynamicMetaObjectProvider und implementiert nicht IXmlSerializable.

Wenn ein Inlineschema angegeben ist, wird das Inlineschema zum Erweitern der vorhandenen relationalen Struktur vor dem Laden der Daten verwendet. Wenn vorliegen Konflikte (z. B. dieselbe Spalte in derselben Tabelle mit unterschiedlichen Datentypen definiert) wird eine Ausnahme ausgelöst.

Wenn kein Inlineschema angegeben ist, wird die relationale Struktur entsprechend der Struktur des XML-Dokuments durch Rückschluss je nach Bedarf erweitert. Wenn das Schema durch Rückschluss erweitert werden kann um alle Daten verfügbar zu machen, wird eine Ausnahme ausgelöst.

System_CAPS_noteHinweis

Der DataSet ordnet ein XML-Element mit dem entsprechenden DataColumn oder DataTable Wenn zulässige XML-Zeichen wie ("_") mit Escapezeichen versehen werden im serialisierten XML. Die DataSet selbst versieht nur Unzulässige XML-Zeichen in XML-Elementnamen und kann daher auch nur diese verarbeiten. Wenn zulässige Zeichen in einem XML-Elementnamen mit Escapezeichen versehen werden, wird das Element während der Verarbeitung ignoriert.

Wenn das XML-Schema für eine DataSet enthält targetNamespace, Daten möglicherweise nicht gelesen und treten möglicherweise Ausnahmen beim Aufrufen von ReadXml zum Laden der DataSet mit XML, das Elemente ohne qualifizierenden Namespace enthält. Legen Sie zum Lesen von nicht qualifizierter Elementen elementFormDefault gleich "qualified" in das XML-Schema wie im folgende Beispiel veranschaulicht.

<xsd:schema id="MyDataSet" 
   elementFormDefault="qualified" 
   targetNamespace="http://www.tempuri.org/MyDataSet.xsd" 
   xmlns="http://www.tempuri.org/MyDataSet.xsd" 
   xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
   xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
</xsd:schema>
System_CAPS_noteHinweis

Wenn das Schema für Ihre DataSet enthält Elemente mit denselben Namen und unterschiedlichen Typen im gleichen Namespace, wird eine Ausnahme ausgelöst, wenn Sie versuchen, lesen Sie das Schema in der DataSet mit ReadXml durch Angabe XmlReadMode.ReadSchema. Diese Ausnahme tritt nicht auf, wenn Sie .NET Framework, Version 1.0 verwenden.

.NET Framework
Verfügbar seit 1.1
Zurück zum Anfang
Anzeigen: