Este artículo se tradujo de forma manual. Mueva el puntero sobre las frases del artículo para ver el texto original. |
Traducción
Original
|
DataRowVersion (Enumeración)
Describe la versión de un DataRow.
Ensamblado: System.Data (en System.Data.dll)
| Nombre de miembro | Descripción | |
|---|---|---|
|
Original | La fila contiene sus valores originales. |
|
Current | La fila contiene valores actuales. |
|
Proposed | La fila contiene un valor propuesto. |
|
Default | La versión predeterminada de DataRowState. Para un valor de DataRowState igual a Added, Modified o Deleted, la versión predeterminada es Current. Para un valor DataRowState de Detached, la versión es Proposed. |
Los valores de DataRowVersion se utilizan al recuperar el valor encontrado en un DataRow mediante Item o GetChildRows del objeto DataRow.
DataRowVersion informa de la versión existente de DataRow. Las versiones cambian en las siguientes circunstancias:
-
Después de llamar al método BeginEdit del objeto DataRow, si cambia el valor, los valores Current y Proposed pasan a estar disponibles.
-
Después de llamar al método CancelEdit del objeto DataRow, se elimina el valor Proposed.
-
Después de llamar al método EndEdit del objeto DataRow, el valor Proposed se convierte en el valor Current.
-
Después de llamar al método AcceptChanges del objeto DataRow, el valor Original se vuelve idéntico al valor Current.
-
Después de llamar al método AcceptChanges del objeto DataTable, el valor Original se vuelve idéntico al valor Current.
-
Después de llamar a RejectChanges del objeto DataRow, se descarta el valor Proposed y la versión se convierte en Current.
En el ejemplo siguiente se comprueba DataRowVersion de DataRow antes de invocar al método 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 7, Windows Vista SP1 o posterior, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (no se admite Server Core), Windows Server 2008 R2 (se admite Server Core con SP1 o posterior), Windows Server 2003 SP2
.NET Framework no admite todas las versiones de todas las plataformas. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.