DataTable.LoadDataRow DataTable.LoadDataRow DataTable.LoadDataRow DataTable.LoadDataRow Method

Определение

Находит и обновляет конкретную строку.Finds and updates a specific row. Если нужная строка не найдена, то с помощью заданных значений создается новая строка.If no matching row is found, a new row is created using the given values.

Перегрузки

LoadDataRow(Object[], Boolean) LoadDataRow(Object[], Boolean) LoadDataRow(Object[], Boolean) LoadDataRow(Object[], Boolean)

Находит и обновляет конкретную строку.Finds and updates a specific row. Если нужная строка не найдена, то с помощью заданных значений создается новая строка.If no matching row is found, a new row is created using the given values.

LoadDataRow(Object[], LoadOption) LoadDataRow(Object[], LoadOption) LoadDataRow(Object[], LoadOption)

Находит и обновляет конкретную строку.Finds and updates a specific row. Если нужная строка не найдена, то с помощью заданных значений создается новая строка.If no matching row is found, a new row is created using the given values.

LoadDataRow(Object[], Boolean) LoadDataRow(Object[], Boolean) LoadDataRow(Object[], Boolean) LoadDataRow(Object[], Boolean)

Находит и обновляет конкретную строку.Finds and updates a specific row. Если нужная строка не найдена, то с помощью заданных значений создается новая строка.If no matching row is found, a new row is created using the given values.

public:
 System::Data::DataRow ^ LoadDataRow(cli::array <System::Object ^> ^ values, bool fAcceptChanges);
public System.Data.DataRow LoadDataRow (object[] values, bool fAcceptChanges);
member this.LoadDataRow : obj[] * bool -> System.Data.DataRow
Public Function LoadDataRow (values As Object(), fAcceptChanges As Boolean) As DataRow

Параметры

values
Object[]

Массив значений, используемых для создания новой строки.An array of values used to create the new row.

fAcceptChanges
Boolean Boolean Boolean Boolean

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

Возвраты

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

Исключения

Размер массива превышает число столбцов в таблице.The array is larger than the number of columns in the table.

Значение не отвечает соответствующему типу столбца.A value doesn't match its respective column type.

Добавление строки нарушает ограничение.Adding the row invalidates a constraint.

Попытка поместить значение null в столбец, у которого AllowDBNull имеет значение "false".Attempting to put a null in a column where AllowDBNull is false.

Примеры

В следующем примере LoadDataRow метод используется для попыток найти строку.The following example uses the LoadDataRow method to attempt to find a row. Если такая строка не найдена, используются значения для создания новой строки.If no such row is found, the values are used to create a new row.

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();
   }
}
Imports System.Data

Class MyDataSet
   Public Shared Sub Main()
      Dim dt As New DataTable()

      Dim dc1 As New DataColumn("col1")
      Dim dc2 As New DataColumn("col2")
      Dim dc3 As New DataColumn("col3")

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

      ' Create an array for the values.
      Dim newRow As Object() = New Object(2) {}

      ' Set the values of the array.
      newRow(0) = "Hello"
      newRow(1) = "World"
      newRow(2) = "two"
      Dim row As DataRow

      dt.BeginLoadData()

      ' Add the new row to the rows collection.
      row = dt.LoadDataRow(newRow, True)

      For Each dr As DataRow In dt.Rows
         Console.WriteLine([String].Format("Row: {0}, {1}, {2}", dr("col1"), dr("col2"), dr("col3")))
      Next

      dt.EndLoadData()
   End Sub
End Class

Комментарии

LoadDataRow Метод принимает массив значений и находит совпадающие значения в первичных ключевых столбцах.The LoadDataRow method takes an array of values and finds the matching value(s) in the primary key column(s).

Если столбец имеет значение по умолчанию, передайте значение NULL в массиве, чтобы задать значение по умолчанию для этого столбца.If a column has a default value, pass a null value in the array to set the default value for that column. Аналогично, если AutoIncrement свойству столбца присвоено значение true, передайте значение NULL в массиве, чтобы задать автоматически формируемое значение для строки.Similarly, if a column has its AutoIncrement property set to true, pass a null value in the array to set the automatically generated value for the row.

true AcceptChanges DataTableЕсли параметр имеет значение или не указан, то добавляются новые данные, а затем вызывается для принятия всех изменений в; Если аргумент имеет значение false, вновь добавленные строки помечаются как вставки и изменяются на fAcceptChanges существующие строки помечаются как изменения.If the fAcceptChanges parameter is true or not specified, the new data is added and then AcceptChanges is called to accept all changes in the DataTable; if the argument is false, newly added rows are marked as insertions, and changes to existing rows are marked as modifications.

Исключения также могут возникать во время ColumnChanging события RowChanging или.Exceptions can also occur during either a ColumnChanging or RowChanging event. При возникновении исключения строка не добавляется в таблицу.If an exception occurs, the row is not added to the table.

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

Дополнительно

LoadDataRow(Object[], LoadOption) LoadDataRow(Object[], LoadOption) LoadDataRow(Object[], LoadOption)

Находит и обновляет конкретную строку.Finds and updates a specific row. Если нужная строка не найдена, то с помощью заданных значений создается новая строка.If no matching row is found, a new row is created using the given values.

public:
 System::Data::DataRow ^ LoadDataRow(cli::array <System::Object ^> ^ values, System::Data::LoadOption loadOption);
public System.Data.DataRow LoadDataRow (object[] values, System.Data.LoadOption loadOption);
member this.LoadDataRow : obj[] * System.Data.LoadOption -> System.Data.DataRow

Параметры

values
Object[]

Массив значений, используемых для создания новой строки.An array of values used to create the new row.

loadOption
LoadOption LoadOption LoadOption LoadOption

Используется для определения способа применения значений массива к соответствующим значениям в существующей строке.Used to determine how the array values are applied to the corresponding values in an existing row.

Возвраты

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

Комментарии

LoadDataRow Метод принимает массив значений и находит совпадающие значения в первичных ключевых столбцах.The LoadDataRow method takes an array of values and finds the matching value(s) in the primary key column(s).

Если столбец имеет значение по умолчанию, передайте значение NULL в массиве, чтобы задать значение по умолчанию для этого столбца.If a column has a default value, pass a null value in the array to set the default value for that column. Аналогично, если AutoIncrement свойству столбца присвоено значение true, передайте значение NULL в массиве, чтобы задать автоматически формируемое значение для строки.Similarly, if a column has its AutoIncrement property set to true, pass a null value in the array to set the automatically generated value for the row.

Значение loadOption параметра используется для определения того, как значения в массиве применяются к существующей строке.The value of the loadOption parameter is used to determine how the values in the array are applied to an existing row. loadOption Например, если для OverwriteChangesзадано значение, Original значения и Current каждого столбца заменяются Unchangedзначениями во входной строке, а RowState свойство имеет значение.For example, if loadOption is set to OverwriteChanges, the Original and Current values of each column are replaced with the values in the incoming row and the RowState property is set to Unchanged.

Исключения также могут возникать во время ColumnChanging события RowChanging или.Exceptions can also occur during either a ColumnChanging or RowChanging event. При возникновении исключения строка не добавляется в таблицу.If an exception occurs, the row is not added to the table.

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

Дополнительно

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