场景是这样的:
name | val
'aa' | 10
'bb' | 20
'cc' | 30
*********
sum | 60
现在我只需选择简单LINQ查询中的所有记录并调用枚举器(ToList()
)
然后我遍历列表并总结val
列。
有更好的方法吗? LINQ选择所有新类型的对象,所以我不知道如何添加其他数据。
感谢。
答案 0 :(得分:2)
匿名类型禁止允许在创建后添加或编辑值。因此,您可以使用自定义输出类,而不是返回匿名类型。像这样的东西
public class ResClass
{
public string name;
public int value;
}
public class OutClass
{
public int sum;
public List<ResClass> lstData;
}
int sum=0;
var outtt = objTT.Where(x => x.id == 1).Select(x =>
{
sum += x.value;
return new ResClass { name = x.name, value= x.value };
}).ToList();
OutClass outCls = new OutClass { sum = sum, lstData = outtt };