当我合并如下所示的代码后,我合并了两个数据集ds1和ds2空列时
ds1.Merge(ds2,true,MissingSchemaAction.Add);
ds1.AcceptChanges();
这两种方法均无效。
DataSet ds1 = new DataSet();
DataSet ds2 = new DataSet();
SqlDataAdapter SqlDA = new SqlDataAdapter();
SqlDA = new SqlDataAdapter("select * from tblProductInventory", myConn);
SqlDA.Fill(ds1, "MyTable");
SqlDA = new SqlDataAdapter("select * from tblProductCategories", myConn);
SqlDA.Fill(ds2, "MyTable");
//ds1.Merge(ds2);
ds1.Merge(ds2, true, MissingSchemaAction.Add);
ds1.AcceptChanges();
GridView1.DataSource = ds1.Tables[0].DefaultView;
GridView1.DataBind();
答案 0 :(得分:0)
由于两个数据集之间没有关系,因此需要向ds1中添加两列,如下所示:
ds1.Tables[0].Columns.Add("CategoryId", typeof(string));
ds1.Tables[0].Columns.Add("CategoryName", typeof(string));
然后您可以执行以下操作:
for (int temp = 0; temp < ds1.Tables[0].Rows.Count; temp++)
{
ds1.Tables[0].Rows[temp]["CategoryId"] = ds2.Tables[0].Rows[temp]["CategoryId"];
ds1.Tables[0].Rows[temp]["CategoryName"] = ds2.Tables[0].Rows[temp]["CategoryName"];
}