Aggiunta di dati alla tabella

Una volta creata una DataTable e definita la relativa struttura tramite colonne e vincoli, è possibile aggiungere nuove righe di dati alla tabella. Per aggiungere una nuova riga, dichiarare una nuova variabile come tipo DataRow. Quando si chiama il metodo NewRow, viene restituito un nuovo oggetto DataRow. La DataTable consente quindi la creazione dell'oggetto DataRow sulla base della struttura della tabella, definita da DataColumnCollection.

Nell'esempio seguente viene illustrato come creare una nuova riga tramite una chiamata al metodo NewRow.

Dim workRow As DataRow = workTable.NewRow()
[C#]
DataRow workRow = workTable.NewRow();

È quindi possibile modificare la riga appena aggiunta utilizzando un indice o il nome della colonna, come mostrato nell'esempio seguente.

workRow("CustLName") = "Smith"
workRow(1) = "Smith"
[C#]
workRow["CustLName"] = "Smith";
workRow[1] = "Smith";

Una volta inseriti i dati nella nuova riga, il metodo Add viene utilizzato per aggiungere la riga a DataRowCollection, come mostrato nel codice seguente.

workTable.Rows.Add(workRow)
[C#]
workTable.Rows.Add(workRow);

È inoltre possibile chiamare il metodo Add per aggiungere una nuova riga passando una matrice di valori, tipizzata come Object, come mostrato nell'esempio seguente.

workTable.Rows.Add(new Object() {1, "Smith"})
[C#]
workTable.Rows.Add(new Object[] {1, "Smith"});

Il passaggio di una matrice di valori, tipizzata come Object, al metodo Add consente di creare una nuova riga all'interno della tabella e di impostarne i valori di colonna in base ai valori contenuti nella variabile oggetto. Si noti che i valori contenuti nella matrice vengono associati in modo sequenziale alle colonne, in base all'ordine in cui compaiono nella tabella.

L'esempio seguente consente di aggiungere dieci righe alla tabella Customers appena creata.

Dim workRow As DataRow
Dim I As Integer

For I = 0 To 9
  workRow = workTable.NewRow()
  workRow(0) = I
  workRow(1) = "CustName" & I.ToString()
  workTable.Rows.Add(workRow)
Next
[C#]
DataRow workRow;

for (int i = 0; i <= 9; i++) 
{
  workRow = workTable.NewRow();
  workRow[0] = i;
  workRow[1] = "CustName" + i.ToString();
  workTable.Rows.Add(workRow);
}

Vedere anche

Modifica dei dati in una DataTable | Classe DataColumnCollection | Classe DataRow | Classe DataRowCollection | Classe DataTable