Using Row Version Information
ADO.NET maintains up to three versions of each DataRow
object. The DataAdapter
reconciles changes made
since the data was loaded from the data source, thereby making
changes to the disconnected data permanent. Two versions of each row
are maintained to allow the DataAdapter
to
determine how to perform the reconciliation. The
Original
version contains the values that were
loaded into the row. The
Current
version contains the latest version of
the data, including the changes made since the data was originally
loaded. The Original
version
isn’t available for newly created rows.
ADO.NET also allows a row to be put into edit mode which temporarily
suspends events for the row and allows the user to make multiple
changes to the row without triggering validation rules. The
BeginEdit( )
method of the
DataRow
puts the row into edit mode, while the
EndEdit( )
and CancelEdit( )
methods take the row out of edit mode.
AcceptChanges( )
also takes the row out of edit
mode because it implicitly calls EndEdit( )
, as
does RejectChanges( )
, which implicitly calls
CancelEdit( )
.
A Proposed
row version is made available while the
row is in edit mode and contains the changes that have been made to
the row while it was in edit mode. If the EndEdit( )
method is called, the changes made are copied from the
Proposed
row to the Current
row. If the CancelEdit( )
method is called, the
values in the Proposed
version are simply discarded. In either case, once the editing is completed, ...
Get ADO.NET in a Nutshell now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.