Compartir a través de


Cómo: Obtener versiones específicas de una fila de datos

Cuando los cambios se realizan en las filas de datos, el conjunto de datos retiene tanto la versión original (Original) como las versiones nuevas (Current) de la fila.Por ejemplo, antes de llamar al método AcceptChanges, su aplicación puede tener acceso a las distintas versiones de un registro (según se defina en la enumeración DataRowVersion) y procesar los cambios según corresponda.

[!NOTA]

Las versiones diferentes de una fila sólo existen después de que ésta haya sido revisada y antes de haber llamado al método AcceptChanges.Una vez que se ha llamado al método AcceptChanges, las versiones actual y original son iguales.

Si se pasa el valor DataRowVersion junto con el índice de la columna (o el nombre de la columna como cadena), se devuelve el valor de la versión de fila concreta de esa columna.La columna modificada se identifica durante los eventos ColumnChanging y ColumnChanged, por lo que es un buen momento para examinar las versiones de fila que difieran con fines de validación.Sin embargo, si ha suspendido las restricciones temporalmente, esos eventos no se provocarán y deberá identificar mediante programación qué columnas han cambiado.Para ello, recorra en iteración la colección Columns y compare los distintos valores de DataRowVersion.

Tener acceso a la versión original de un objeto DataRow

Para obtener la versión original de un registro

  • Obtenga acceso al valor de una columna que se pasa en DataRowVersion de la fila que desea devolver.

    El ejemplo siguiente muestra cómo puede utilizar un valor DataRowVersion para obtener el valor original de un campo CompanyName en un objeto DataRow:

    Dim originalCompanyName = NorthwindDataSet1.Customers(0)(
       "CompanyName", DataRowVersion.Original).ToString()
    
    string originalCompanyName;
    originalCompanyName = northwindDataSet1.Customers[0]
        ["CompanyName", DataRowVersion.Original].ToString();
    

Tener acceso a la versión actual de un objeto DataRow

Para obtener la versión actual de un registro

  • Obtenga acceso al valor de una columna y agregue un parámetro al índice donde se indique qué versión de una fila desea que se devuelva.

    El ejemplo siguiente muestra cómo puede utilizar un valor DataRowVersion para obtener el valor actual de un campo CompanyName en un objeto DataRow:

    Dim currentCompanyName = NorthwindDataSet1.Customers(0)(
        "CompanyName", DataRowVersion.Current).ToString()
    
    string currentCompanyName;
    currentCompanyName = northwindDataSet1.Customers[0]
        ["CompanyName", DataRowVersion.Current].ToString();
    

Vea también

Conceptos

Modificar datos en la aplicación

Validar datos

Guardar datos

Novedades de desarrollo de aplicaciones de datos en Visual Studio 2012

Enlazar controles de Windows Forms a datos en Visual Studio

Preparar la aplicación para recibir datos

Buscar datos en la aplicación

Enlazar controles a los datos en Visual Studio

Otros recursos

Tutoriales sobre datos

Información general de las aplicaciones de datos en Visual Studio

Conectarse a datos en Visual Studio