ProgrammaSubito.it
appunti su ASP.NET 2.0, C#
a cura di
Carmine Pacifico
My Facebook
Skip Navigation Links
Donate to ProgrammaSubito.it
Links
 MyCurriculum

Come copiare un DataRow da un DataTable ad un altro.

How to copy a DataRow from one DataTable to another

In questo esempio viene mostrato come copiare un DataRow da un  DataTable ad un altro.
Viene anche mostrato l'errore che spesso si compie quando si vuole effettuare quest'operazione e che ritorna il messaggio "This row already belongs to another table".


File Default.aspx.cs
DataColumn Name = new DataColumn();
DataColumn SurName = new DataColumn();
DataTable dt1 = new DataTable();

dt1.Columns.Add(Name);
dt1.Columns.Add(SurName);

DataRow dr1 = dt1.NewRow();
dr1[Name] = "Carmine";
dr1[SurName] = "Pacifico";
dt1.Rows.Add(dr1);

DataRow dr2 = dt1.NewRow();
dr2[Name] = "Mario";
dr2[SurName] = "Rossi";

dt1.Rows.Add(dr2);

//Now i wona copy the first row of DataTable dt1 in another DataTable

DataTable dt2 = dt1.Clone();

//dt2.Rows.Add(dr1);
// it's not correct
//if you try this you receive this error message
//"This row already belongs to another table"

// this is the solution
DataRow dr3 = dt2.NewRow();

for (int i = 0; i < dt2.Columns.Count; i++)
{
   dr3[i] = dr1[i];
}
dt2.Rows.Add(dr3);