Прочитать на английском

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


DataTable.LoadDataRow Метод

Определение

Находит и обновляет конкретную строку. Если нужная строка не найдена, то с помощью заданных значений создается новая строка.

Перегрузки

LoadDataRow(Object[], Boolean)

Находит и обновляет конкретную строку. Если нужная строка не найдена, то с помощью заданных значений создается новая строка.

LoadDataRow(Object[], LoadOption)

Находит и обновляет конкретную строку. Если нужная строка не найдена, то с помощью заданных значений создается новая строка.

LoadDataRow(Object[], Boolean)

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

Находит и обновляет конкретную строку. Если нужная строка не найдена, то с помощью заданных значений создается новая строка.

public System.Data.DataRow LoadDataRow (object?[] values, bool fAcceptChanges);
public System.Data.DataRow LoadDataRow (object[] values, bool fAcceptChanges);

Параметры

values
Object[]

Массив значений, используемых для создания новой строки.

fAcceptChanges
Boolean

Значение true — принять изменения; в противном случае — значение false.

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

Новый объект DataRow.

Исключения

Размер массива превышает число столбцов в таблице.

Значение не отвечает соответствующему типу столбца.

Добавление строки нарушает ограничение.

Попытка поместить значение null в столбец, у которого AllowDBNull имеет значение "false".

Примеры

В следующем примере метод используется LoadDataRow для поиска строки. Если такая строка не найдена, значения используются для создания новой строки.

using System;
using System.Data;

class MyDataSet {
   public static void Main() {
      DataTable dt = new DataTable();

      DataColumn dc1 = new DataColumn("col1");
      DataColumn dc2 = new DataColumn("col2");
      DataColumn dc3 = new DataColumn("col3");

      dt.Columns.Add(dc1);
      dt.Columns.Add(dc2);
      dt.Columns.Add(dc3);

      // Create an array for the values.
      object[] newRow = new object[3];

      // Set the values of the array.
      newRow[0] = "Hello";
      newRow[1] = "World";
      newRow[2] = "two";
      DataRow row;

      dt.BeginLoadData();

      // Add the new row to the rows collection.
      row = dt.LoadDataRow(newRow, true);

      foreach (DataRow dr in dt.Rows) {
         Console.WriteLine(String.Format("Row: {0}, {1}, {2}", dr["col1"], dr["col2"], dr["col3"]));
      }

      dt.EndLoadData();
   }
}

Комментарии

Метод LoadDataRow принимает массив значений и находит соответствующие значения в столбцах первичного ключа.

Если столбец имеет значение по умолчанию, передайте значение NULL в массив, чтобы задать значение по умолчанию для этого столбца. Аналогичным образом, если свойство столбца имеет AutoIncrement значение true, передайте значение NULL в массиве, чтобы задать автоматически созданное значение для строки.

fAcceptChanges Если параметр задан true или не указан, новые данные добавляются, а затем AcceptChanges вызываются для принятия всех изменений в DataTable; если аргумент имеет значение false, добавленные строки помечаются как вставки, а изменения существующих строк помечаются как изменения.

Исключения также могут возникать во время ColumnChanging события или RowChanging . При возникновении исключения строка не добавляется в таблицу.

Используйте LoadDataRow в сочетании с BeginLoadData и EndLoadData.

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

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

.NET 9 и другие версии
Продукт Версии
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

LoadDataRow(Object[], LoadOption)

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

Находит и обновляет конкретную строку. Если нужная строка не найдена, то с помощью заданных значений создается новая строка.

public System.Data.DataRow LoadDataRow (object?[] values, System.Data.LoadOption loadOption);
public System.Data.DataRow LoadDataRow (object[] values, System.Data.LoadOption loadOption);

Параметры

values
Object[]

Массив значений, используемых для создания новой строки.

loadOption
LoadOption

Используется для определения способа применения значений массива к соответствующим значениям в существующей строке.

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

Новый объект DataRow.

Комментарии

Метод LoadDataRow принимает массив значений и находит соответствующие значения в столбцах первичного ключа.

Если столбец имеет значение по умолчанию, передайте значение NULL в массив, чтобы задать значение по умолчанию для этого столбца. Аналогичным образом, если свойство столбца имеет AutoIncrement значение true, передайте значение NULL в массиве, чтобы задать автоматически созданное значение для строки.

Значение loadOption параметра используется для определения того, как значения в массиве применяются к существующей строке. Например, если loadOption для задано значение OverwriteChanges, Original значения и Current каждого столбца заменяются значениями во входящем наборе, а свойству RowState присваивается значение Unchanged.

Исключения также могут возникать во время ColumnChanging события или RowChanging . При возникновении исключения строка не добавляется в таблицу.

Используйте LoadDataRow в сочетании с BeginLoadData и EndLoadData.

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

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

.NET 9 и другие версии
Продукт Версии
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1