C sharp - Pasar filas de un datatable a otro dt auxiliar

   
Vista:

Pasar filas de un datatable a otro dt auxiliar

Publicado por Luis (2 intervenciones) el 11/04/2008 11:18:48
Hola, tengo un datatable como el siguiente

DataColumn column;

//id
column = new DataColumn();
column.DataType = System.Type.GetType("System.String");
column.ColumnName = "id";
dt.Columns.Add(column);

//Nombre
column = new DataColumn();
column.DataType = System.Type.GetType("System.String");
column.ColumnName = "nombre";
dt.Columns.Add(column);

Quiero que las filas de este datatable que cumplan unas condiciones pasarlas a un datatable auxiliar dtAux pero sin tener que hacer el código anterior para este datatable, es decir, copiar la estructura de columnas de dt a dtAux.

No sé si me explicado bien. Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Pasar filas de un datatable a otro dt auxiliar

Publicado por Iván K (55 intervenciones) el 11/04/2008 19:51:45
Por qué al código que estas mostrando no lo conviertes en una función, es decir:

private DataTable getTabla()
{
DataTable dt = new DataTable();
DataColumn column;

//id
column = new DataColumn();
column.DataType = System.Type.GetType("System.String");
column.ColumnName = "id";
dt.Columns.Add(column);

//Nombre
column = new DataColumn();
column.DataType = System.Type.GetType("System.String");
column.ColumnName = "nombre";
dt.Columns.Add(column);

return dt;
}

Después ya inicializas las dos tablas:

DataTable dt = getTabla();
DataTable dtAux = getTabla();

Otra manera es con la función Copy()

DataTable dtAux = dt.Copy();
dtAux.Rows.Clear();
dtAux.Constraints.Clear();
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Pasar filas de un datatable a otro dt auxiliar

Publicado por Luis (2 intervenciones) el 14/04/2008 10:23:54
Lo solucioné utilizando la opción Clone, pero me gusta más la manera que tu me indicas. Muchas gracias y un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Pasar filas de un datatable a otro dt auxiliar

Publicado por Jorge (1 intervención) el 05/12/2008 00:41:56
//Asumiendo origen = DataTableDataTable destino = origen.Clone();foreach(DataRow dr in origen.Rows)destino.Rows.Add(dr.ItemArray);
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar