Export (0) Print
Expand All

DataTable.GetChanges Method (DataRowState)

Gets a copy of the DataTable containing all changes made to it since it was last loaded, or since AcceptChanges was called, filtered by DataRowState.

Namespace:  System.Data
Assembly:  System.Data (in System.Data.dll)

public DataTable GetChanges(
	DataRowState rowStates
)

Parameters

rowStates
Type: System.Data.DataRowState

One of the DataRowState values.

Return Value

Type: System.Data.DataTable
A filtered copy of the DataTable that can have actions performed on it, and later be merged back in the DataTable using Merge. If no rows of the desired DataRowState are found, the method returns null.

The GetChanges method is used to produce a second DataTable object that contains only the changes introduced into the original. Use the rowStates argument to specify the type of changes the new object should include.

Relationship constraints may cause unchanged parent rows to be included.

private void ProcessDeletes(DataTable table, 
    OleDbDataAdapter adapter)
{
    DataTable changeTable = table.GetChanges(DataRowState.Deleted);

    // Check the DataTable for errors. 
    if (changeTable.HasErrors)
    {
        // Insert code to resolve errors.
    }

    // After fixing errors, update the database with the DataAdapter 
    adapter.Update(changeTable);
}

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0, 1.1

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

XNA Framework

Supported in: 3.0, 2.0, 1.0
Show:
© 2015 Microsoft