Compartir a través de


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

Actualización: noviembre 2007

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 As String
    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 As String
    currentCompanyName = NorthwindDataSet1.Customers(0) _
        ("CompanyName", DataRowVersion.Current).ToString()
    
    string currentCompanyName;
    currentCompanyName = northwindDataSet1.Customers[0]
        ["CompanyName", DataRowVersion.Current].ToString();
    

Vea también

Conceptos

Lo nuevo en datos

Información general sobre la presentación de datos

Otros recursos

Modificar datos en la aplicación

Validar datos

Guardar datos

Tutoriales sobre datos

Introducción a Data Access

Conectarse a datos en Visual Studio

Preparar la aplicación para recibir datos

Buscar datos en la aplicación

Mostrar datos en formularios en aplicaciones para Windows