DataTable.AcceptChanges DataTable.AcceptChanges DataTable.AcceptChanges DataTable.AcceptChanges Method

定义

提交自上次调用 AcceptChanges() 以来对该表进行的所有更改。Commits all the changes made to this table since the last time AcceptChanges() was called.

public:
 void AcceptChanges();
public void AcceptChanges ();
member this.AcceptChanges : unit -> unit
Public Sub AcceptChanges ()

示例

下面的示例测试有错误的每个表。The following example tests each table for errors. 如果表中的错误可以协调 (通过将它传递给未定义的函数),AcceptChanges被调用; 否则为RejectChanges调用。If the table's errors can be reconciled (by passing it to an undefined function), AcceptChanges is called; otherwise, RejectChanges is called.

private void AcceptOrReject(DataTable table)
{
    // If there are errors, try to reconcile.
    if(table.HasErrors)
    { 
        if(Reconcile(table))
        {
            // Fixed all errors.
            table.AcceptChanges();
        }
        else
        {
            // Couldn'table fix all errors.
            table.RejectChanges();
        }
    }
    else
        // If no errors, AcceptChanges.
        table.AcceptChanges();
}

private bool Reconcile(DataTable thisTable)
{
    foreach(DataRow row in thisTable.Rows)
    {
        //Insert code to try to reconcile error.

        // If there are still errors return immediately
        // since the caller rejects all changes upon error.
        if(row.HasErrors)
            return false;
    }
    return true;
}
Private Sub AcceptOrReject(table As DataTable)
    ' If there are errors, try to reconcile.
        If (table.HasErrors) Then
            If (Reconcile(table)) Then
                ' Fixed all errors.
                table.AcceptChanges()
            Else
                ' Couldn'table fix all errors.
                table.RejectChanges()
            End If
        Else
            ' If no errors, AcceptChanges.
            table.AcceptChanges()
        End If
 End Sub
 
Private Function Reconcile(thisTable As DataTable) As Boolean
    Dim row As DataRow
    For Each row in thisTable.Rows
       'Insert code to try to reconcile error.

       ' If there are still errors return immediately
       ' since the caller rejects all changes upon error.
       If row.HasErrors Then
           Reconcile = False
           Exit Function
       End If
    Next row
    Reconcile = True
 End Function

注解

AcceptChanges调用时,任何DataRow仍处于编辑模式的对象已成功结束其编辑。When AcceptChanges is called, any DataRow object still in edit mode successfully ends its edits. DataRowState也会更改: 所有AddedModified行成为Unchanged,和Deleted删除行。The DataRowState also changes: all Added and Modified rows become Unchanged, and Deleted rows are removed.

AcceptChanges通常在调用方法DataTable尝试更新后DataSet使用DbDataAdapter.Update方法。The AcceptChanges method is generally called on a DataTable after you attempt to update the DataSet using the DbDataAdapter.Update method.

适用于

另请参阅