Procedura: ottenere versioni specifiche di un DataRow
Quando si apportano modifiche alle righe di dati, il dataset mantiene sia la versione originale (Original) che quella nuova (Current) della riga.Prima di chiamare il metodo AcceptChanges, ad esempio, sarà possibile accedere alle diverse versioni di un record, definite nell'enumerazione DataRowVersion, ed effettuare le modifiche necessarie.
[!NOTA]
La presenza di versioni diverse di una riga si verifica solo in seguito alla sua modifica e prima della chiamata del metodo AcceptChanges.Una volta chiamato il metodo AcceptChanges, la versione corrente e la versione originale coincideranno.
Se si passa il valore DataRowVersion insieme all'indice di colonna, o al nome di colonna come stringa, viene restituito il valore della versione specifica della riga presente in quella colonna.La colonna modificata viene identificata durante gli eventi ColumnChanging e ColumnChanged. A questo punto è possibile analizzare le diverse versioni della riga per eseguire la convalida.Tuttavia, se i vincoli sono stati sospesi temporaneamente, questi eventi non verranno generati e sarà necessario identificare a livello di codice le colonne modificate.A tale scopo, scorrere la raccolta Columns e confrontare i diversi valori DataRowVersion.
Accesso alla versione originale di una DataRow
Per ottenere la versione originale di un record
Accedere al valore di una colonna passando il valore DataRowVersion della riga che deve venire restituita.
Nell'esempio che segue viene illustrato l'utilizzo del valore DataRowVersion per ottenere il valore originale di un campo CompanyName in una DataRow.
Dim originalCompanyName = NorthwindDataSet1.Customers(0)( "CompanyName", DataRowVersion.Original).ToString()
string originalCompanyName; originalCompanyName = northwindDataSet1.Customers[0] ["CompanyName", DataRowVersion.Original].ToString();
Accesso alla versione corrente di una DataRow
Per ottenere la versione corrente di un record
Accedere al valore di una colonna e aggiungere all'indice un parametro che indichi la versione della una riga che si desidera restituire.
Nell'esempio che segue viene illustrato l'utilizzo del valore DataRowVersion per ottenere il valore corrente di un campo CompanyName in una DataRow.
Dim currentCompanyName = NorthwindDataSet1.Customers(0)( "CompanyName", DataRowVersion.Current).ToString()
string currentCompanyName; currentCompanyName = northwindDataSet1.Customers[0] ["CompanyName", DataRowVersion.Current].ToString();
Vedere anche
Concetti
Modifica di dati nell'applicazione
Novità relative allo sviluppo di applicazioni dati in Visual Studio 2012
Associazione di controlli Windows Form ai dati in Visual Studio
Preparazione dell'applicazione al ricevimento di dati
Recupero di dati nell'applicazione
Associazione di controlli ai dati in Visual Studio
Altre risorse
Procedure dettagliate relative ai dati