Condividi tramite


DataTable.LoadDataRow Metodo

Definizione

Rileva e aggiorna una riga specifica. Se non viene trovata una riga corrispondente, viene creata una nuova riga utilizzando i valori dati.

Overload

LoadDataRow(Object[], Boolean)

Rileva e aggiorna una riga specifica. Se non viene trovata una riga corrispondente, viene creata una nuova riga utilizzando i valori dati.

LoadDataRow(Object[], LoadOption)

Rileva e aggiorna una riga specifica. Se non viene trovata una riga corrispondente, viene creata una nuova riga utilizzando i valori dati.

LoadDataRow(Object[], Boolean)

Source:
DataTable.cs
Source:
DataTable.cs
Source:
DataTable.cs

Rileva e aggiorna una riga specifica. Se non viene trovata una riga corrispondente, viene creata una nuova riga utilizzando i valori dati.

public:
 System::Data::DataRow ^ LoadDataRow(cli::array <System::Object ^> ^ values, bool fAcceptChanges);
public System.Data.DataRow LoadDataRow (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.

fAcceptChanges
Boolean

true per accettare le modifiche apportate; in caso contrario, false.

Restituisce

Nuovo oggetto DataRow.

Eccezioni

La matrice è maggiore del numero di colonne nella tabella.

Un valore non corrisponde al rispettivo tipo di colonna.

L'aggiunta della riga invalida un vincolo.

Tentativo di immissione di un valore null in una colonna in cui la proprietà AllowDBNull è impostata su false.

Esempio

Nell'esempio seguente viene usato il LoadDataRow metodo per tentare di trovare una riga. Se non viene trovata alcuna riga di questo tipo, i valori vengono usati per creare una nuova riga.

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 primaria.

Se una colonna ha un valore predefinito, passare un valore Null nella matrice per impostare il valore predefinito per tale colonna. Analogamente, se una colonna ha la proprietà AutoIncrement impostata su true, passare un valore Null nella matrice per impostare il valore generato automaticamente per la riga.

Se il parametro è o meno specificato, i nuovi dati vengono aggiunti e quindi AcceptChanges viene chiamato per accettare tutte le modifiche nell'oggetto DataTable. Se l'argomento fAcceptChanges è truefalse, le righe appena aggiunte vengono contrassegnate come inserimenti e le modifiche alle righe esistenti vengono contrassegnate come modifiche.

Le eccezioni possono verificarsi anche durante un ColumnChanging evento o RowChanging . Se si verifica un'eccezione, la riga non viene aggiunta alla tabella.

Usare LoadDataRow insieme a BeginLoadData e EndLoadData.

Vedi anche

Si applica a

LoadDataRow(Object[], LoadOption)

Source:
DataTable.cs
Source:
DataTable.cs
Source:
DataTable.cs

Rileva e aggiorna una riga specifica. Se non viene trovata una riga corrispondente, viene creata una nuova riga utilizzando i valori dati.

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);
public System.Data.DataRow LoadDataRow (object[] values, System.Data.LoadOption loadOption);
member this.LoadDataRow : obj[] * System.Data.LoadOption -> System.Data.DataRow
Public Function LoadDataRow (values As Object(), loadOption As LoadOption) As DataRow

Parametri

values
Object[]

Matrice di valori utilizzati per creare la nuova riga.

loadOption
LoadOption

Utilizzato per stabilire la modalità in cui i valori della matrice vengono applicati ai valori corrispondenti in una riga esistente.

Restituisce

Nuovo oggetto DataRow.

Commenti

Il LoadDataRow metodo accetta una matrice di valori e trova i valori corrispondenti nelle colonne chiave primaria.

Se una colonna ha un valore predefinito, passare un valore Null nella matrice per impostare il valore predefinito per tale colonna. Analogamente, se una colonna ha la proprietà AutoIncrement impostata su true, passare un valore Null nella matrice per impostare il valore generato automaticamente per la riga.

Il valore del loadOption parametro viene usato per determinare il modo in cui i valori della matrice vengono applicati a una riga esistente. Ad esempio, se loadOption è impostato su OverwriteChanges, i Original valori e Current di ogni colonna vengono sostituiti con i valori della riga in ingresso e la RowState proprietà è impostata su Unchanged.

Le eccezioni possono verificarsi anche durante un ColumnChanging evento o RowChanging . Se si verifica un'eccezione, la riga non viene aggiunta alla tabella.

Usare LoadDataRow insieme a BeginLoadData e EndLoadData.

Vedi anche

Si applica a