新建一个DataTable table 查询A类型有到3条记录。
赋值给table.
在查询B类型有7 条记录   也要赋值给table
这样table就有10记录了
怎么叠加啊    我执行后一直只要7条记录   前面三条都没有了。求高手帮忙

解决方案 »

  1.   

    如果结构相同,那么可以如下合并DataTable dt1=CreateDataTable();
                    DataTable dt2=CreateDataTable();
                    DataTable dt3 = dt1.AsEnumerable().Union(dt2.AsEnumerable()).CopyToDataTable();
      

  2.   

    2楼正解!!!
    也可以
    DataTable dt=CreateDataTable();
    DataRow dr=CreateDataRow();
    dt.Rows.Add(dr);
      

  3.   


    你这个是新建一个DataTable   在建一个DataRow   在把DataRow放到DataTable里面。
    我查询返回的都是DataTable。这样不行
      

  4.   

    如果结构相同,可以做如下合并
    DataTable dtResult = new DataTable();
    dtResult.Merge(table);多次的话就循环dtResult.Merge(table);
      

  5.   


    class Program
        {
            static void Main(string[] args)
            {
                DataTable dt = new DataTable();            dt.Columns.AddRange(new DataColumn[] { 
                    new DataColumn("id",typeof(Int32)),
                    new DataColumn("name",typeof(string))
                });            DataRow dr = null;
                dr = dt.NewRow();
                dr["id"] = 1;
                dr["name"] = "guwei1";
                dt.Rows.Add(dr);            DataTable newDt = dt.Copy();
                DataRow newDr = newDt.NewRow();
                newDr["id"] = 2;
                newDr["name"] = "guwei2";
                newDt.Rows.Add(newDr);            foreach (var item in newDt.Rows)
                {
                    DataRow tempDR = item as DataRow;
                    Console.WriteLine(tempDR["id"].ToString() +":" +tempDR["name"].ToString());
                }        }
        }
      

  6.   

    引用 2 楼 tpywocao 的回复:
    2楼正解!!!
    也可以
    DataTable dt=CreateDataTable();
    DataRow dr=CreateDataRow();
    dt.Rows.Add(dr);
    你这个是新建一个DataTable   在建一个DataRow   在把DataRow放到DataTable里面。
    我查询返回的都是DataTable。这样不行
    怎么不行,放到DataTable中,返回这个table不就可以了。