Creazione di un DataView

Per creare un DataView, sono disponibili due modalità. È possibile utilizzare il costruttore DataView o creare un riferimento alla proprietà DefaultView della DataTable. Il costruttore DataView può essere vuoto o accettare una DataTable come unico argomento, oppure una DataTable insieme a criteri di filtro, criteri di ordinamento e un filtro relativo allo stato di riga. Per ulteriori informazioni sugli argomenti aggiuntivi disponibili per l'utilizzo con DataView, vedere Ordinamento e applicazione di filtri ai dati mediante un DataView.

Poiché l'indice per un DataView viene scritto sia nel momento della creazione del DataView, che ad ogni modifica delle proprietà Sort, RowFilter o RowStateFilter, per ottenere prestazioni ottimali, si consiglia di fornire eventuali criteri di ordinamento o di filtro iniziali come argomenti del costruttore quando si crea il DataView. Se si crea un DataView senza specificare criteri di filtro o di ordinamento e successivamente si impostano le proprietà Sort, RowFilter o RowStateFilter, l'indice verrà creato almeno due volte: una volta nel momento della creazione del DataView e una seconda volta nel momento in cui vengono apportate modifiche alle proprietà dei filtri o dell'ordinamento.

Si noti che se si crea un DataView utilizzando un costruttore che non accetta argomenti, non sarà possibile utilizzare il DataView fino a quando non sarà stata impostata la proprietà Table.

Nell'esempio di codice seguente viene illustrata la creazione di un DataView mediante il costruttore DataView. Insieme alla DataTable vengono forniti un RowFilter, una colonna Sort e DataViewRowState.

Dim custDV As DataView = New DataView(custDS.Tables("Customers"), _
                                      "Country = 'USA'", _
                                      "ContactName", _
                                      DataViewRowState.CurrentRows)
[C#]
DataView custDV = new DataView(custDS.Tables["Customers"], 
                               "Country = 'USA'", 
                               "ContactName", 
                               DataViewRowState.CurrentRows);

Nell'esempio di codice seguente viene mostrato come ottenere un riferimento al DataView predefinito di una DataTable mediante la proprietà DefaultView della tabella.

Dim custDV As DataView = custDS.Tables("Customers").DefaultView
[C#]
DataView custDV = custDS.Tables["Customers"].DefaultView;

Vedere anche

Creazione e utilizzo di DataView | Ordinamento e applicazione di filtri ai dati mediante un DataView | Creazione e utilizzo di DataTable | Classe DataTable | Classe DataView