Agregar datos a un objeto DataTable

Después de crear una DataTable y definir su estructura usando columnas y restricciones, se le pueden agregar nuevas filas de datos. Para agregar una nueva fila, declare una nueva variable como tipo DataRow. Se devuelve un nuevo objeto DataRow cuando se llama al método NewRow. A continuación, la DataTable crea el objeto DataRow basándose en la estructura de la tabla, definida por la DataColumnCollection.

En el ejemplo siguiente se muestra cómo se crea una nueva fila llamando al método NewRow.

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

A continuación, la fila recién agregada se puede manipular mediante un índice o nombre de columna, como se muestra en el siguiente ejemplo.

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

Una vez que se han insertado datos en la nueva fila, se utiliza el método Add para agregar la fila a la DataRowCollection, como se muestra en el siguiente código.

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

También se puede llamar al método Add para agregar una nueva fila pasando una matriz de valores, con el tipo Object, tal y como se muestra en el ejemplo siguiente.

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

Si se pasa una matriz de objetos con el tipo Object al método Add, se crea una nueva fila dentro de la tabla y se establece sus valores de columna en los valores de la matriz de objetos. Tenga en cuenta que los valores de la matriz se hacen coincidir en secuencia con las columnas, basándose en el orden en que aparecen en la tabla.

En el siguiente ejemplo se agregan diez filas a la tabla Customers recién creada.

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);  
}  

Consulte también