Lägga till data i en datatabell

När du har skapat en DataTable och definierat dess struktur med hjälp av kolumner och begränsningar kan du lägga till nya rader med data i tabellen. Om du vill lägga till en ny rad deklarerar du en ny variabel som typ DataRow. Ett nytt DataRow objekt returneras när du anropar NewRow metoden. Därefter skapar DataTable objektet DataRow, baserat på tabellens struktur, som definieras av DataColumnCollection.

I följande exempel visas hur du skapar en ny rad genom att anropa NewRow metoden.

Dim workRow As DataRow = workTable.NewRow()
DataRow workRow = workTable.NewRow();

Du kan sedan ändra den nyligen tillagda raden med hjälp av ett index eller kolumnnamnet, som du ser i följande exempel.

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

När data har infogats i den nya raden används Add-metoden för att lägga till raden i DataRowCollection, vilket visas i följande kod.

workTable.Rows.Add(workRow)
workTable.Rows.Add(workRow);

Du kan också anropa Add metoden för att lägga till en ny rad genom att skicka in en matris med värden, skrivet som Object, enligt följande exempel.

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

Om du skickar en matris med värden, som skrivs som Objekt, till Add metoden skapas en ny rad i tabellen och dess kolumnvärden anges till värdena i objektmatrisen. Observera att värdena i matrisen matchas sekventiellt med kolumnerna, baserat på i vilken ordning de visas i tabellen.

I följande exempel läggs 10 rader till i den nyligen skapade Customers tabellen.

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
DataRow workRow;

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

Se även