日期:2014-05-20  浏览次数:20819 次

关于Linq返回的结果集保存进数据库
大家好,请教一下
我有一条Linq语句用来从DataTable中读取数据
var dataSource = from resultReturn in dt.AsEnumerable()
group resultReturn by new { equ_id = resultReturn.Field<string>("EQU_ID"), med_id = resultReturn.Field<string>("MED_ID") } into g
  select new
  {
  equ_id = g.Key.equ_id,
  med_id = g.Key.med_id,
  sumvalue = g.Sum(resultReturn => resultReturn.Field<Decimal>("JXHL_VALUE"))
  };
其中dt为DataTable,已经填充了数据,
现在希望将这条语句返回的结果集保存进数据库,该怎样操作呢?这个结果集返回的是什么类型的数据?请告知,谢谢!

------解决方案--------------------
返回的是select new后面大括号里面的数据类型。

怎么保存???
假设你有个表tb,
包含字段equ_id,med_id,sumvalue 

foreach(var tt in dataSource)
{
tb tmp = new tb();
tmp.equ_id = tt.equ_id; 
tmp.med_id = tt.med_id; 
tmp.sumvalue = tt.sumvalue ; 
dt.tb.add(tmp);
}
dt.SubmitChanges();