Export (0) Print
Expand All

DataSet.GetChanges Method (DataRowState)

Gets a copy of the DataSet 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 DataSet GetChanges(
	DataRowState rowStates
)

Parameters

rowStates
Type: System.Data.DataRowState

One of the DataRowState values.

Return Value

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

The GetChanges method is used to produce a second DataSet 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.

This returned copy is designed to be merged back in to this original DataSet. Relationship constraints may cause parent rows marked Unchanged to be included. If no rows of the desired DataRowState are found, the GetChanges method returns null.

The following example uses the GetChanges method to create a second DataSet object, which is then used to update a data source.

private void UpdateDataSet(DataSet dataSet)
{
    // Check for changes with the HasChanges method first. 
    if(!dataSet.HasChanges(DataRowState.Modified)) return;

    // Create temporary DataSet variable and 
    // GetChanges for modified rows only.
    DataSet tempDataSet = 
        dataSet.GetChanges(DataRowState.Modified);

    // Check the DataSet for errors. 
    if(tempDataSet.HasErrors)
    {
        // Insert code to resolve errors.
    }
    // After fixing errors, update the data source with   
    // the DataAdapter used to create the DataSet.
    adapter.Update(tempDataSet);
}

.NET Framework

Supported in: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Show:
© 2014 Microsoft