var vardt = from p in dt.AsEnumerable() group p by p.ItemArray[0] into g let sum = g.Sum(x => int.Parse(x.ItemArray[1].ToString())) select new { 批号 = g.Key, Sum = sum };这里的sum 下面都可以用吧
本帖最后由 caozhy 于 2012-04-12 22:29:41 编辑
本帖最后由 caozhy 于 2012-04-12 22:35:52 编辑
var var1 = list.GroupBy(n => n.ID).Select(n => new { ID = n.Key, Count = n.Sum(m => m.Count) });
这个从它的实现原理中也很好理解。匿名对象的属性是只读的。 var x = new { Name = "x" }; x.Name = "y"; // error
- -LINQ强大的地方在 LINQ TO OBJECT 而这个 LINQ TO SQL属于LINQ失败的一个地方- -至少我的感觉如此。比如caozhy的例子,如果用在XML上,我想LZ就会明白,LINQ有多好用了。
创建一个新的范围变量sum ,后面可以对sum 进行操作
var vardt = from p in dt.AsEnumerable()
group p by p.ItemArray[0] into g
let sum = g.Sum(x => int.Parse(x.ItemArray[1].ToString()))
select new
{
批号 = g.Key,
Sum = sum
};这里的sum 下面都可以用吧
var x = new { Name = "x" };
x.Name = "y"; // error
LINQ TO OBJECT
而这个
LINQ TO SQL属于LINQ失败的一个地方- -至少我的感觉如此。比如caozhy的例子,如果用在XML上,我想LZ就会明白,LINQ有多好用了。