Questo articolo è stato tradotto automaticamente. Per visualizzare l'articolo in inglese, selezionare la casella di controllo Inglese. È possibile anche visualizzare il testo inglese in una finestra popup posizionando il puntatore del mouse sopra il testo.
Traduzione
Inglese

Metodo DataSet.ReadXml (XmlReader, XmlReadMode)

 

Data di pubblicazione: ottobre 2016

Legge i dati in XML schema e il DataSet utilizzando l'oggetto specificato System.Xml.XmlReader e XmlReadMode.

Spazio dei nomi:   System.Data
Assembly:  System.Data (in System.Data.dll)

public XmlReadMode ReadXml(
	XmlReader reader,
	XmlReadMode mode
)

Parametri

reader
Type: System.Xml.XmlReader

Il XmlReader da cui leggere.

mode
Type: System.Data.XmlReadMode

Uno dei valori di XmlReadMode.

Valore restituito

Type: System.Data.XmlReadMode

Il XmlReadMode utilizzato per leggere i dati.

Il ReadXml metodo fornisce un modo per leggere solo i dati o dati e schema in un DataSet da un documento XML, mentre il ReadXmlSchema metodo legge solo lo schema. Per leggere i dati e schema, utilizzare uno del ReadXML overload che include il mode parametro e impostarne il valore ReadSchema.

Si noti che lo stesso vale per il WriteXml e WriteXmlSchema metodi, rispettivamente. Per scrivere i dati XML oppure lo schema e dati dal DataSet, utilizzare il WriteXml metodo. Per scrivere solo lo schema, utilizzare il WriteXmlSchema metodo.

System_CAPS_noteNota

Un InvalidOperationException Se in un tipo di colonna, verrà generata la DataRow da cui leggere o scrivere implementa IDynamicMetaObjectProvider e non implementa IXmlSerializable.

Se viene specificato uno schema inline, lo schema inline viene utilizzato per estendere la struttura relazionale esistente prima di caricare i dati. Se sono presenti conflitti (ad esempio, la stessa colonna nella stessa tabella definita con diversi tipi di dati) viene generata un'eccezione.

Se viene specificato alcuno schema inline, la struttura relazionale viene esteso tramite inferenza, se necessario, in base alla struttura del documento XML. Se lo schema non può essere esteso tramite inferenza per esporre tutti i dati, viene generata un'eccezione.

System_CAPS_noteNota

Il DataSet non associa un elemento XML con il corrispondente DataColumn o DataTable caratteri XML validi come ("_") quando vengono sottoposti a escape nel XML serializzato. Il DataSet solo effettua l'escape di caratteri XML non validi nei nomi degli elementi XML e pertanto può utilizzare solo lo stesso. Quando vengono sottoposti a escape caratteri validi nel nome dell'elemento XML, l'elemento viene ignorato durante l'elaborazione.

Se lo Schema XML per un DataSet include un targetNamespace, dati non vengano letti e che vengano generate eccezioni quando si chiama ReadXml per caricare il DataSet con XML contenente elementi senza nessuno spazio dei nomi valide. Per leggere elementi non qualificati, impostare elementFormDefault uguale a "qualified" nello Schema XML come illustrato nell'esempio seguente.

<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_noteNota

Se lo schema per il DataSet contiene gli elementi con lo stesso nome ma con tipo diverso, nello stesso spazio dei nomi, viene generata un'eccezione quando si tenta di leggere lo schema nel DataSet con ReadXml specificando XmlReadMode.ReadSchema. Questa eccezione non si verifica se si utilizza .NET Framework versione 1.0.

.NET Framework
Disponibile da 1.1
Torna all'inizio
Mostra: