DataTable.GetChanges Метод

Определение

Получает копию таблицы DataTable, содержащую все изменения, внесенные после ее последней загрузки или после вызова метода AcceptChanges().Gets a copy of the DataTable containing all changes made to it since it was last loaded, or since AcceptChanges() was called.

Перегрузки

GetChanges()

Получает копию таблицы DataTable, содержащую все изменения, внесенные после ее загрузки или после последнего вызова метода AcceptChanges().Gets a copy of the DataTable that contains all changes made to it since it was loaded or AcceptChanges() was last called.

GetChanges(DataRowState)

Получает копию таблицы DataTable, содержащую все изменения, внесенные после ее последней загрузки или после вызова метода AcceptChanges() и отфильтрованные по параметру 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.

GetChanges()

Получает копию таблицы DataTable, содержащую все изменения, внесенные после ее загрузки или после последнего вызова метода AcceptChanges().Gets a copy of the DataTable that contains all changes made to it since it was loaded or AcceptChanges() was last called.

public:
 System::Data::DataTable ^ GetChanges();
public System.Data.DataTable? GetChanges ();
public System.Data.DataTable GetChanges ();
member this.GetChanges : unit -> System.Data.DataTable
Public Function GetChanges () As DataTable

Возвращаемое значение

DataTable

Копия изменений из данного объекта DataTable или значение null, если изменения не найдены.A copy of the changes from this DataTable, or null if no changes are found.

Примеры

private void UpdateDataTable(DataTable table,
    OleDbDataAdapter myDataAdapter)
{
    DataTable xDataTable = table.GetChanges();

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

    // After fixing errors, update the database with the DataAdapter
    myDataAdapter.Update(xDataTable);
}
Private Sub UpdateDataTable(table As DataTable, _
    myDataAdapter As OleDbDataAdapter)

    Dim xDataTable As DataTable = table.GetChanges()

    ' Check the DataTable for errors.
    If xDataTable.HasErrors Then
        ' Insert code to resolve errors.
    End If

    ' After fixing errors, update the database with the DataAdapter 
    myDataAdapter.Update(xDataTable)
End Sub

Комментарии

Создает новый объект DataSet , содержащий копию всех строк в оригинале DataSet с ожидающими изменениями.Creates a new DataSet containing a copy of all rows in the original DataSet that have pending changes. Ограничения отношений могут привести к добавлению дополнительных неизмененных строк в новую, DataSet если неизмененные строки содержат первичные ключи, соответствующие внешним ключам в измененных строках.Relationship constraints can cause additional unchanged rows to be added to the new DataSet if the unchanged rows contain primary keys corresponding to foreign keys in the changed rows. Метод возвращает null ( Nothing в Visual Basic), если в оригинале отсутствуют строки DataSet с ожидающими изменениями.The method returns null (Nothing in Visual Basic) if there are no rows in the original DataSet with pending changes.

Применяется к

GetChanges(DataRowState)

Получает копию таблицы DataTable, содержащую все изменения, внесенные после ее последней загрузки или после вызова метода AcceptChanges() и отфильтрованные по параметру 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.

public:
 System::Data::DataTable ^ GetChanges(System::Data::DataRowState rowStates);
public System.Data.DataTable? GetChanges (System.Data.DataRowState rowStates);
public System.Data.DataTable GetChanges (System.Data.DataRowState rowStates);
member this.GetChanges : System.Data.DataRowState -> System.Data.DataTable
Public Function GetChanges (rowStates As DataRowState) As DataTable

Параметры

rowStates
DataRowState

Одно из значений перечисления DataRowState.One of the DataRowState values.

Возвращаемое значение

DataTable

Отфильтрованная копия таблицы DataTable, с которой можно работать и позднее объединить обратно с DataTable, используя метод Merge(DataSet).A filtered copy of the DataTable that can have actions performed on it, and later be merged back in the DataTable using Merge(DataSet). Если строки с требуемым типом DataRowState отсутствуют, метод вернет значение null.If no rows of the desired DataRowState are found, the method returns null.

Примеры

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);
}
Private Sub ProcessDeletes(table As DataTable, _
    adapter As OleDbDataAdapter)

   Dim changeTable As DataTable = table.GetChanges(DataRowState.Deleted)

   ' Check the DataTable for errors.
   If table.HasErrors Then
      ' Insert code to resolve errors.
   End If

   ' After fixing errors, update the database with the DataAdapter 
   adapter.Update(changeTable)
End Sub

Комментарии

GetChangesМетод используется для создания второго DataTable объекта, который содержит только изменения, появившиеся в исходном объекте.The GetChanges method is used to produce a second DataTable object that contains only the changes introduced into the original. Используйте rowStates аргумент, чтобы указать тип изменений, которые должен включать новый объект.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.

Применяется к