Comment : obtenir des versions spécifiques d'un DataRow
Publication: juillet 2016
Lorsque vous modifiez des lignes de données, le groupe de données conserve à la fois leur version originale (Original) et leur nouvelle version (Current). Par exemple, avant l'appel à la méthode AcceptChanges, votre application peut accéder aux différentes versions d'un enregistrement (telles que définies dans l'énumération DataRowVersion) et traiter les modifications en conséquence.
Notes
Des versions différentes d'une ligne n'existent qu'après sa modification et avant l'appel à la méthode AcceptChanges.Après l'appel à la méthode AcceptChanges, les versions d'origine et actuelle sont identiques.
Le passage de la valeur DataRowVersion avec l'index de colonne (ou le nom de colonne en tant que chaîne) retourne la valeur de la version particulière de ligne de cette colonne. La colonne modifiée est identifiée pendant les événements ColumnChanging et ColumnChanged. Il s'agit donc d'un moment idéal pour examiner les différentes versions de ligne à des fins de validation. Néanmoins, si vous avez temporairement interrompu des contraintes, ces événements ne seront pas déclenchés et il vous faudra identifier par programme les colonnes modifiées. Vous pouvez réaliser cette opération en effectuant une itération au sein de la collection Columns et en comparant les différentes valeurs DataRowVersion.
Accès à la version originale d'un DataRow
Pour obtenir la version originale d'un enregistrement
Accédez à la valeur d'une colonne passant le DataRowVersion de la ligne que vous souhaitez retourner.
L'exemple suivant montre comment utiliser une valeur DataRowVersion pour obtenir la valeur d'origine d'un champ CompanyName contenu dans un DataRow :
string originalCompanyName; originalCompanyName = northwindDataSet1.Customers[0] ["CompanyName", DataRowVersion.Original].ToString();
Dim originalCompanyName = NorthwindDataSet1.Customers(0)( "CompanyName", DataRowVersion.Original).ToString()
Accès à la version actuelle d'un DataRow
Pour obtenir la version actuelle d'un enregistrement
Accédez à la valeur d'une colonne et ajoutez un paramètre à l'index indiquant la version de la ligne que vous souhaitez retourner.
L'exemple suivant montre comment utiliser une valeur DataRowVersion pour obtenir la valeur actuelle d'un champ CompanyName contenu dans un DataRow :
string currentCompanyName; currentCompanyName = northwindDataSet1.Customers[0] ["CompanyName", DataRowVersion.Current].ToString();
Dim currentCompanyName = NorthwindDataSet1.Customers(0)( "CompanyName", DataRowVersion.Current).ToString()
Voir aussi
Modification des données dans votre application
Validation des données
Enregistrement des données
Procédures pas à pas relatives aux données
Liaison de contrôles Windows Forms à des données dans Visual Studio
Vue d'ensemble d'applications de données dans Visual Studio
Connexion aux données dans Visual Studio
Préparation de votre application pour recevoir des données
Extraction de données dans votre application
Liaison de contrôles à des données dans Visual Studio