DataSet.AcceptChanges Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Commits all the changes made to this DataSet since it was loaded or since the last time AcceptChanges() was called.
public:
void AcceptChanges();
public void AcceptChanges ();
member this.AcceptChanges : unit -> unit
Public Sub AcceptChanges ()
Examples
The following example adds a DataRow to a DataTable in a DataSet. The AcceptChanges method is then called on the DataSet, which cascades to all DataTable objects that it contains.
private void AcceptChanges()
{
DataSet myDataSet;
myDataSet = new DataSet();
// Not shown: methods to fill the DataSet with data.
DataTable t;
t = myDataSet.Tables["Suppliers"];
// Add a DataRow to a table.
DataRow myRow;
myRow = t.NewRow();
myRow["CompanyID"] = "NWTRADECO";
myRow["CompanyName"] = "NortWest Trade Company";
// Add the row.
t.Rows.Add( myRow );
// Calling AcceptChanges on the DataSet causes AcceptChanges to be
// called on all subordinate objects.
myDataSet.AcceptChanges();
}
Private Sub AcceptChanges()
Dim myDataSet As DataSet
myDataSet = new DataSet()
' Not shown: methods to fill the DataSet with data.
Dim t As DataTable
t = myDataSet.Tables("Suppliers")
' Add a DataRow to a table.
Dim myRow As DataRow
myRow = t.NewRow()
myRow("CompanyID") = "NWTRADECO"
myRow("CompanyName") = "NortWest Trade Company"
' Add the row.
t.Rows.Add( myRow )
' Calling AcceptChanges on the DataSet causes AcceptChanges to be
' called on all subordinate objects.
myDataSet.AcceptChanges()
End Sub
Remarks
Both the DataRow and DataTable classes have AcceptChanges methods. Calling AcceptChanges at the DataTable level causes the AcceptChanges method for each DataRow to be called. Similarly, invoking AcceptChanges on the DataSet causes AcceptChanges to be called on each table within the DataSet. In this manner, you have multiple levels at which the method can be invoked. Calling the AcceptChanges of the DataSet enables you to invoke the method on all subordinate objects (for example, tables and rows) with one call.
When you call AcceptChanges
on the DataSet
, any DataRow objects still in edit-mode end their edits successfully. The RowState property of each DataRow also changes; Added
and Modified
rows become Unchanged
, and Deleted
rows are removed.
If the DataSet
contains ForeignKeyConstraint objects, invoking the AcceptChanges
method also causes the AcceptRejectRule to be enforced.
Note
AcceptChanges
and RejectChanges
only apply to DataRow
related changes (that is, Add, Remove, Delete, and Modify). They are not applicable to schema or structural changes.
Calling AcceptChanges will not replicate these changes back to the data source if the DataSet was filled using a DataAdapter. In that situation, call Update instead. See Updating Data Sources with DataAdapters for more information.