读书人

linq 对List操作有关问题,大神请进.

发布时间: 2013-04-07 12:50:11 作者: rapoo

linq 对List操作问题,大神请进...


public class Model
{
public string Name { get; set; }
public int Count { get; set; }

}

List<Model> list = new List<Model>();
for (int i = 0; i < 10; i++)
{
Model m = new Model();
m.Name = i + "Name";
m.Count = (i + 1);
list.Add(m);
}


linq 如何查找list 中已经存在的name 并更新其count值?
并最后统计出name值相同的所有count的总和?
[解决办法]
var query=from p in list
group p by p.Name into g
select new
{
Name=g.Key,
Count=g.Count()
}
[解决办法]
你要按Name统计Count吗?
var res=from q in list
group q by q.Name into g
select new Model {Name=g.Key, Count= g.Sum(x=>x.Count)};

[解决办法]
var res=from q in list group q by q.Name into g select new Model {Name=g.Key, Count= g.Sum(x=>x.Count)};

List<Model> result=res..ToList();

就这样

读书人网 >C#

热点推荐