DataRowVersion, énumération
Mise à jour : novembre 2007
Décrit la version de DataRow.
Assembly : System.Data (dans System.Data.dll)
| Nom de membre | Description | |
|---|---|---|
![]() ![]() | Original | La ligne contient ses valeurs d'origine. |
![]() ![]() | Current | La ligne contient les valeurs actuelles. |
![]() ![]() | Proposed | La ligne contient une valeur proposée. |
![]() ![]() | Default | Version par défaut de DataRowState. Si la valeur de DataRowState est Added, Modified ou Deleted, la version par défaut est Current. Si la valeur de DataRowState est Detached, la version est Proposed. |
Les valeurs DataRowVersion sont utilisées lors de la récupération de la valeur trouvée dans DataRow à l'aide de Item ou du GetChildRows de l'objet DataRow.
DataRowVersion vous informe de la version de DataRow qui existe. Les versions sont modifiées dans les circonstances suivantes :
Après l'appel à la méthode BeginEdit de l'objet DataRow, si vous modifiez la valeur, les valeurs Current et Proposed sont disponibles.
Après l'appel à la méthode CancelEdit de l'objet DataRow, la valeur Proposed est supprimée.
Après l'appel à la méthode EndEdit de l'objet DataRow, la valeur Proposed devient la valeur Current.
Après l'appel à la méthode AcceptChanges de l'objet DataRow, la valeur Original devient identique à la valeur Current.
Après l'appel à la méthode AcceptChanges de l'objet DataTable, la valeur Original devient identique à la valeur Current.
Après l'appel au RejectChanges de l'objet DataRow, la valeur Proposed est ignorée et la version devient Current.
L'exemple suivant vérifie le DataRowVersion de DataRow avant d'appeler la méthode AcceptChanges.
Private Sub CheckVersionBeforeAccept() 'Run a function to create a DataTable with one column. Dim dataTable As DataTable = MakeTable() Dim dataRow As DataRow = dataTable.NewRow() dataRow("FirstName") = "Marcy" dataTable.Rows.Add(dataRow) dataRow.BeginEdit() ' Edit data but keep the same value. dataRow(0) = "Marcy" ' Uncomment the following line to add a new value. ' dataRow(0) = "Richard" Console.WriteLine(String.Format("FirstName {0}", dataRow(0))) ' Compare the proposed version with the current. If dataRow.HasVersion(DataRowVersion.Proposed) Then If dataRow(0, DataRowVersion.Current) Is dataRow(0, DataRowVersion.Proposed) Then Console.WriteLine("The original and the proposed are the same.") dataRow.CancelEdit() Else dataRow.AcceptChanges() Console.WriteLine("The original and the proposed are different.") End If End If End Sub Private Function MakeTable() As DataTable ' Make a simple table with one column. Dim dt As New DataTable("dataTable") Dim firstName As New DataColumn("FirstName", _ Type.GetType("System.String")) dt.Columns.Add(firstName) Return dt End Function
Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professionnel Édition x64, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile pour Smartphone, Windows Mobile pour Pocket PC, Xbox 360
Le .NET Framework et le .NET Compact Framework ne prennent pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.
