有两个DataSet,是两个结构不相同但是有相同的列(比如都有ID这个),我是要把他们合并绑定到Repeater中,请问如何将他们合并。谢谢。

解决方案 »

  1.   

    Merge方法是将两个结构相似的datatable合并成一个datatable:  
    DataTable dt1 = new DataTable();  
    dt1.Columns.Add("id");  
    dt1.Columns.Add("name");  
    dt1.Columns.Add("pwd");  
    for (int i = 0; i < 5; i++)  
    {  
    dt1.Rows.Add(new object[] { i.ToString(), "name" + i.ToString(), "" });  
    }  
    DataTable dt2 = new DataTable();  
    dt2.Columns.Add("id");  
    dt2.Columns.Add("name");  
    dt2.Columns.Add("pwd");  
    for (int i = 5; i < 10; i++)  
    {  
    dt1.Rows.Add(new object[] { i.ToString(), "name" + i.ToString(), "" });  
    }  
    DataTable dt3 = null;  
    dt3 = dt1.Clone();  
    if (dt3 != null)  
    {  
    dt3.Merge(dt1);  
    dt3.Merge(dt2);  
      

  2.   

    有相似结构的倒好说,现在是结构不相同的两个DataSet合并,但是会有相同的列,这个就不知道怎么解决了。
      

  3.   

    把两个dataset分别绑定到两个datatable
    再用循环判断datatable2里的每一列的列名跟datatable1里的列名有无相同,不同就add上去
    这样行不?