Condividi tramite


Limitazioni delle inferenze (ADO.NET)

Il processo di inferenza di uno schema di un tipo DataSet da un documento XML può fornire come risultato diversi schemi a seconda degli elementi XML presenti in ogni documento. Si considerino ad esempio i seguenti documenti XML:

Document1:

<DocumentElement>
  <Element1>Text1</Element1>
  <Element1>Text2</Element1>
</DocumentElement>

Document2:

<DocumentElement>
  <Element1>Text1</Element1>
</DocumentElement>

Nel caso di "Document1", il processo di inferenza consente di produrre un DataSet denominato "DocumentElement" e una tabella denominata "Element1", poiché "Element1" è un elemento ripetuto.

DataSet: DocumentElement

Table: Element1

Element1_Text

Text1

Text2

Tuttavia, nel caso di "Document2", il processo di inferenza consente di produrre un oggetto DataSet denominato "NewDataSet" e una tabella denominata "DocumentElement". "Element1" viene inferito come colonna in quanto privo di attributi o elementi figlio.

DataSet: NewDataSet

Table: DocumentElement

Element1

Text1

È possibile che lo scopo di tali documenti XML fosse la creazione dello stesso schema, ma il processo di inferenza consente di produrre risultati molto diversi in base agli elementi contenuti in ogni documento.

Per evitare eventuali discrepanze nella generazione di uno schema da un documento XML, si consiglia di specificare esplicitamente uno schema tramite il linguaggio XSD (XML Schema Definition Language) o XDR (XML-Data Reduced) durante il caricamento di un DataSet da XML. Per ulteriori informazioni su come specificare in modo esplicito lo schema di un DataSet con XML Schema, vedere Derivazione della struttura relazionale di un DataSet da XML Schema (XSD).

Vedere anche

Concetti

Caricamento di un DataSet da XML (ADO.NET)

Caricamento delle informazioni relative allo schema di un DataSet da XML (ADO.NET)

Altre risorse

Inferenza della struttura relazionale del DataSet da XML (ADO.NET)

Utilizzo di XML in un DataSet (ADO.NET)

DataSet, DataTable e DataView (ADO.NET)