I'm retrieving `DataTables` from my database and I need to insert a particular row from one `DataTable` into a determined index into another `DataTable`.

basically I would like to have say, row[0] of `DataTable` dt1 inserted into `DataTable` dt2 at index 4.

These are two different tables obtained from two different database calls. Is there a way to do this?

Any help would be greatly appreciated.

[EDIT]
Sorry, Here's what I've done

```
DataTable dt1 = populateTable();
DataTable targetTable = populateTargetTable();
DataRow dr;
dr = dt1.NewRow();
dr = targetTable.Rows[0];

int index=0;
DataRow temp;
for (int i = 0; i < dt1.Rows.Count; i++)
{
    temp = dt1.Rows[i];
    if (rowFitsCondition(temp)){
        index = i;
    }
}
dt1.Rows.InsertAt(dr, index);

```

and the `InsertAt()` call fails, and gives me the `This row already belongs to another table error.`