DataSet.HasChanges Method (DataRowState)

Gets a value indicating whether the DataSet has changes, including new, deleted, or modified rows, filtered by DataRowState.

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

public bool HasChanges (
	DataRowState rowStates
public boolean HasChanges (
	DataRowState rowStates
public function HasChanges (
	rowStates : DataRowState
) : boolean
Not applicable.



One of the DataRowState values.

Return Value

true if the DataSet has changes; otherwise false.

Examine the HasChanges property of the DataSet before invoking the GetChanges method.

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 = 

    // Check the DataSet for errors.
        // Insert code to resolve errors.
    // After fixing errors, update the data source with  
    // the DataAdapter used to create the DataSet.

Windows 98, Windows Server 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

.NET Framework

Supported in: 3.0, 2.0, 1.1, 1.0

.NET Compact Framework

Supported in: 2.0, 1.0

XNA Framework

Supported in: 1.0