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

Definizione

Rileva e aggiorna una riga specifica.Finds and updates a specific row. Se non viene trovata una riga corrispondente, viene creata una nuova riga utilizzando i valori dati.If no matching row is found, a new row is created using the given values.

Overload

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

Rileva e aggiorna una riga specifica.Finds and updates a specific row. Se non viene trovata una riga corrispondente, viene creata una nuova riga utilizzando i valori dati.If no matching row is found, a new row is created using the given values.

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

Rileva e aggiorna una riga specifica.Finds and updates a specific row. Se non viene trovata una riga corrispondente, viene creata una nuova riga utilizzando i valori dati.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)

Rileva e aggiorna una riga specifica.Finds and updates a specific row. Se non viene trovata una riga corrispondente, viene creata una nuova riga utilizzando i valori dati.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

Parametri

values
Object[]

Matrice di valori utilizzati per creare la nuova riga.An array of values used to create the new row.

fAcceptChanges
Boolean Boolean Boolean Boolean

true per accettare le modifiche apportate; in caso contrario, false.true to accept changes; otherwise false.

Restituisce

Nuovo oggetto DataRow.The new DataRow.

Eccezioni

La matrice è maggiore del numero di colonne nella tabella.The array is larger than the number of columns in the table.

Un valore non corrisponde al rispettivo tipo di colonna.A value doesn't match its respective column type.

L'aggiunta della riga invalida un vincolo.Adding the row invalidates a constraint.

Tentativo di immissione di un valore null in una colonna in cui la proprietà AllowDBNull è impostata su false.Attempting to put a null in a column where AllowDBNull is false.

Esempi

L'esempio seguente usa il LoadDataRow metodo per tentare di trovare una riga.The following example uses the LoadDataRow method to attempt to find a row. Se non viene trovata alcuna riga, i valori vengono utilizzati per creare una nuova riga.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

Commenti

Il LoadDataRow metodo accetta una matrice di valori e trova i valori corrispondenti nelle colonne chiave primarie.The LoadDataRow method takes an array of values and finds the matching value(s) in the primary key column(s).

Se una colonna ha un valore predefinito, passare un valore null nella matrice in cui impostare il valore predefinito per tale colonna.If a column has a default value, pass a null value in the array to set the default value for that column. Analogamente, se dispone di una colonna relativa AutoIncrement proprietà impostata su true, viene passato un valore null nella matrice in cui impostare il valore generato automaticamente per la riga.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.

Se il fAcceptChanges parametro è true o non specificato, vengono aggiunti i nuovi dati e quindi AcceptChanges viene chiamato per accettare tutte le modifiche nel DataTable; se l'argomento è false, aggiunti di recente le righe sono contrassegnate come gli inserimenti e le modifiche a le righe esistenti vengono contrassegnate come le modifiche.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.

Le eccezioni possono verificarsi anche durante un ColumnChanging o RowChanging evento.Exceptions can also occur during either a ColumnChanging or RowChanging event. Se si verifica un'eccezione, la riga non viene aggiunta alla tabella.If an exception occurs, the row is not added to the table.

Uso LoadDataRow unitamente BeginLoadData e EndLoadData.Use LoadDataRow in conjunction with BeginLoadData and EndLoadData.

Vedi anche

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

Rileva e aggiorna una riga specifica.Finds and updates a specific row. Se non viene trovata una riga corrispondente, viene creata una nuova riga utilizzando i valori dati.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

Parametri

values
Object[]

Matrice di valori utilizzati per creare la nuova riga.An array of values used to create the new row.

loadOption
LoadOption LoadOption LoadOption LoadOption

Utilizzato per stabilire la modalità in cui i valori della matrice vengono applicati ai valori corrispondenti in una riga esistente.Used to determine how the array values are applied to the corresponding values in an existing row.

Restituisce

Nuovo oggetto DataRow.The new DataRow.

Commenti

Il LoadDataRow metodo accetta una matrice di valori e trova i valori corrispondenti nelle colonne chiave primarie.The LoadDataRow method takes an array of values and finds the matching value(s) in the primary key column(s).

Se una colonna ha un valore predefinito, passare un valore null nella matrice in cui impostare il valore predefinito per tale colonna.If a column has a default value, pass a null value in the array to set the default value for that column. Analogamente, se dispone di una colonna relativa AutoIncrement proprietà impostata su true, viene passato un valore null nella matrice in cui impostare il valore generato automaticamente per la riga.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.

Il valore della loadOption parametro viene utilizzato per determinare come vengono applicati i valori nella matrice in una riga esistente.The value of the loadOption parameter is used to determine how the values in the array are applied to an existing row. Ad esempio, se loadOption è impostata su OverwriteChanges, il Original e Current i valori di ogni colonna vengono sostituiti con i valori nella riga in arrivo e il RowState è impostata su Unchanged.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.

Le eccezioni possono verificarsi anche durante un ColumnChanging o RowChanging evento.Exceptions can also occur during either a ColumnChanging or RowChanging event. Se si verifica un'eccezione, la riga non viene aggiunta alla tabella.If an exception occurs, the row is not added to the table.

Uso LoadDataRow unitamente BeginLoadData e EndLoadData.Use LoadDataRow in conjunction with BeginLoadData and EndLoadData.

Vedi anche

Si applica a