Поделиться через


DataTable.GetChanges Метод

Определение

Получает копию таблицы DataTable, содержащую все изменения, внесенные после ее последней загрузки или после вызова метода AcceptChanges().

Перегрузки

GetChanges()

Получает копию таблицы DataTable, содержащую все изменения, внесенные после ее загрузки или после последнего вызова метода AcceptChanges().

GetChanges(DataRowState)

Получает копию таблицы DataTable, содержащую все изменения, внесенные после ее последней загрузки или после вызова метода AcceptChanges() и отфильтрованные по параметру DataRowState.

GetChanges()

Исходный код:
DataTable.cs
Исходный код:
DataTable.cs
Исходный код:
DataTable.cs

Получает копию таблицы DataTable, содержащую все изменения, внесенные после ее загрузки или после последнего вызова метода AcceptChanges().

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 или значение null, если изменения не найдены.

Примеры

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 объекте с ожидающими изменениями. Ограничения связей могут привести к добавлению дополнительных неизменившихся строк в новую DataSet , если неизменимые строки содержат первичные ключи, соответствующие внешним ключам в измененных строках. Метод возвращает null значение (Nothing в Visual Basic), если в исходном DataSet экземпляре нет строк с ожидающих изменений.

См. также раздел

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

GetChanges(DataRowState)

Исходный код:
DataTable.cs
Исходный код:
DataTable.cs
Исходный код:
DataTable.cs

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

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

Отфильтрованная копия таблицы DataTable, с которой можно работать и позднее объединить обратно с DataTable, используя метод Merge(DataSet). Если строки с требуемым типом DataRowState отсутствуют, метод вернет значение 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 объекта, который содержит только изменения, внесенные в исходный объект. Используйте аргумент , rowStates чтобы указать тип изменений, которые должен включать новый объект.

Ограничения связи могут привести к тому, что родительские строки будут включены без изменений.

См. также раздел

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