Clonar DataSet

06/04/2004 - 09:29 por Anonimo | Informe spam
Hola amigos.

intento clonar un Dataset pero tengo problemas, tengo
este código más o menos

...
DataSet ds1 = ds.Clone();
DataRow NuevaFila = ds1.Tables[0].NewRow();
NuevaFila["CD_PERSONA"] = DBNull.Value;
NuevaFila["DS_NOMBRE"] = "[Ninguno]";

ds1.Tables[0].Rows.Add(NuevaFila);
foreach (DataRow myRow in ds.Tables[0].Rows)
{
ds1.Tables[0].Rows.Add(myRow);
}

Cuando intento hacer

ds1.Tables[0].Rows.Add(myRow);

me falla, y el mensaje de error me dice que no se puede
insertar porque esa fila ya está en otra tabla.

Cómo podría hacerlo ?
 

Leer las respuestas

#1 Vidi
06/04/2004 - 11:51 | Informe spam
Igual que has clonado el dataset deberias clonar la fila,
una fila no puede estar en 2 tablas diferentes, solo puede
tener un padre, osease no puede estar en 2 colecciones a
la vez.

ds1.Tables[0].Rows.Add(myRow.Clone());

Espero que te funcione.


Hola amigos.

intento clonar un Dataset pero tengo problemas, tengo
este código más o menos


DataSet ds1 = ds.Clone();
DataRow NuevaFila = ds1.Tables[0].NewRow();
NuevaFila["CD_PERSONA"] = DBNull.Value;
NuevaFila["DS_NOMBRE"] = "[Ninguno]";

ds1.Tables[0].Rows.Add(NuevaFila);
foreach (DataRow myRow in ds.Tables[0].Rows)
{
ds1.Tables[0].Rows.Add(myRow);
}

Cuando intento hacer

ds1.Tables[0].Rows.Add(myRow);

me falla, y el mensaje de error me dice que no se puede
insertar porque esa fila ya está en otra tabla.

Cómo podría hacerlo ?



.

Preguntas similares