DataTable.LoadDataRow メソッド

定義

特定の行を検索し、更新します。Finds and updates a specific row. 一致する行が見つからない場合は、指定した値を使用して新しい行が作成されます。If no matching row is found, a new row is created using the given values.

オーバーロード

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)

特定の行を検索し、更新します。Finds and updates a specific row. 一致する行が見つからない場合は、指定した値を使用して新しい行が作成されます。If no matching row is found, a new row is created using the given values.

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

変更を受け入れる場合は true。それ以外の場合は falsetrue to accept changes; otherwise false.

戻り値

新しい DataRowThe 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.

AllowDBNull が false である列に null を格納しようとしています。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.

false DataTable AcceptChangesパラメーターがtrueまたは指定されていない場合は、新しいデータが追加され、のすべての変更を受け入れるために呼び出されます。引数がの場合は、新しく追加された行が挿入としてマークされ、変更されます。 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.

BeginLoadData LoadDataRow を組み合わせてEndLoadData使用します。Use LoadDataRow in conjunction with BeginLoadData and EndLoadData.

こちらもご覧ください

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

配列値を既存の行にある対応する値に適用する方法を決定するために使用します。Used to determine how the array values are applied to the corresponding values in an existing row.

戻り値

新しい DataRowThe 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 Current RowState設定されている場合、各列の値Unchangedと値は、受信した行の値に置き換えられ、プロパティはに設定されます。OriginalFor 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.

BeginLoadData LoadDataRow を組み合わせてEndLoadData使用します。Use LoadDataRow in conjunction with BeginLoadData and EndLoadData.

こちらもご覧ください

適用対象