Como copiar una DateTable en C# (también DataRow)

c-sharp imagen

Si estás programando en .NET con lenguaje C# y necesitas copiar el contenido de una tabla (DataTable) a otra hay una forma muy sencilla de hacerlo.

Tenemos 2 DataTables:

DataTable tabla1 = new DataTable();
DataTable tabla2 = new DataTable();

Si hacemos tabla2 = tabla1 NO ES VÁLIDO, porque lo que hagamos en una tabla se reflejaría en la otra.

Podemos utilizar para copiarla lo siguiente:

//Clonamos la estructura
tabla2 = tabla1.Clone();
//Recorremos las filas de la tabla1 y las importamos en la tabla2
Foreach(DataRow dr in tabla1.Rows)
{
tabla2.ImportRow(dr);
}

Con esto tendríamos 2 tablas iguales pero sin estar vinculadas referencialmente. Problema resuelto