Riepilogo del processo di inferenza dello schema del DataSet

Il processo di inferenza consente prima di tutto di determinare, sulla base del documento XML, quali elementi verranno inferiti come tabelle. Sulla base delle rimanenti informazioni XML, il processo di inferenza consente quindi di determinare le colonne per tali tabelle. Nel caso di tabelle nidificate, gli oggetti DataRelation e ForeignKeyConstraint vengono generati dal processo di inferenza.

Di seguito viene riportato un breve riepilogo delle regole di inferenza:

  • Gli elementi a cui sono associati attributi vengono inferiti come tabelle.
  • Gli elementi a cui sono associati elementi figli vengono inferiti come tabelle.
  • Gli elementi ripetuti vengono inferiti come tabella singola.
  • Se all'elemento del documento, o principale, non sono associati attributi ed elementi figli da inferire come colonne, tale elemento viene inferito come DataSet. In caso contrario, l'elemento del documento viene inferito come tabella.
  • Gli attributi vengono inferiti come colonne.
  • Gli elementi a cui non sono associati attributi o elementi figli e che non si ripetono vengono inferiti come colonne.
  • Nel caso di elementi inferiti come tabelle e nidificati all'interno di altri elementi inferiti a loro volta come tabelle, viene creato un oggetto DataRelation tra le due tabelle. Una nuova colonna di chiave primaria denominata "TableName_Id" viene aggiunta a entrambe le tabelle e utilizzata dall'oggetto DataRelation. Un vincolo ForeignKeyConstraint viene creato tra le due tabelle tramite la colonna "TableName_Id".
  • Nel caso di elementi inferiti come tabelle e contenenti testo ma privi di elementi figli, per il testo di ogni elemento viene creata una nuova colonna denominata "TableName_Text". Se un elemento viene inferito come tabella e dispone di testo, ma a tale elemento sono associati anche elementi figli, il testo verrà ignorato.

Vedere anche

Inferenza della struttura relazionale del DataSet da XML | Caricamento di un DataSet da XML | Caricamento delle informazioni relative allo schema di un DataSet da XML | XML e il DataSet | Creazione e utilizzo di DataSet