日期:2014-05-17  浏览次数:20966 次

如何将多个DataTable添加到指定的DataSet中
如何将多个DataTable添加到指定的DataSet中
C# code
DataSet ds = new DataSet();//创建数据集
DataTable dt1 = new GetEmployeeInfo();//获取员工信息表
DataTable dt2 = new GetCustomerInfo();//获取客户信息表
ds.Tables.Add(dt1);//[color=#FF00FF]出错,dt1已经属于另外一个DataSet;[/color]

请问:如何将dt1和dt2添加到ds中呢?

------解决方案--------------------
DataTable temp= dt1.Copy();
ds.Tables.Add(temp);
------解决方案--------------------
给表取个名字
------解决方案--------------------
DataSet ds = new DataSet();
DataTable dt1 = this.TestData;
DataTable dt2 = this.TestData;
dt2.TableName = "province2";
ds.Tables.Add(dt1.Copy());//这样可以添加成功

ds.Tables.Add(dt2.Copy());//添加第二个Table时就出错了,已经存在DataTable;

}

/// <summary>
/// 测试数据源
/// </summary>
private DataTable TestData
{
get
{
DataTable dt = new DataTable("province");
dt.Columns.Add(new DataColumn("ID", typeof(int)));
dt.Columns.Add(new DataColumn("Name", typeof(string)));

dt.Rows.Add(new object[] { 1, "湖北" });
dt.Rows.Add(new object[] { 2, "江苏" });
dt.Rows.Add(new object[] { 3, "浙江" });
dt.Rows.Add(new object[] { 4, "黄冈" });
return dt;
}
}
------解决方案--------------------
tb = tb2.Copy()
tb.TableName = "lll";
ds.Tables.Add(tb);