C# 按属性汇总列表
我有这样一个对象列表:C# 按属性汇总列表,c#,list,C#,List,我有这样一个对象列表: List<ClassName> list = new List<ClassName>(); list.Add(new ClassName() { Name = 1, Amount = 5 }); list.Add(new ClassName() { Name = 2, Amount = 10 }); list.Add(new ClassName() { Name = 1, Amount = 20 })
List<ClassName> list = new List<ClassName>();
list.Add(new ClassName()
{
Name = 1,
Amount = 5
});
list.Add(new ClassName()
{
Name = 2,
Amount = 10
});
list.Add(new ClassName()
{
Name = 1,
Amount = 20
});
list.Add(new ClassName()
{
Name = 3,
Amount = 10
});
list.Add(new ClassName()
{
Name = 3,
Amount = 15
});
如何存档此文件
var lst = list.GroupBy(g = > g.Name).Select(t = > new
ClassName()
{
Amount = t.Sum(s=>s.Amount), Name = t.Key
}).ToList();
或
或
通过LINQ实现:
var result = list.GroupBy(x => x.Name)
.Select(x => new ClassName { Name = x.Key, Amount = x.Sum(i => i.Amount) })
.ToList();
在此处阅读有关LINQ的更多信息:通过LINQ进行操作:
var result = list.GroupBy(x => x.Name)
.Select(x => new ClassName { Name = x.Key, Amount = x.Sum(i => i.Amount) })
.ToList();
在这里阅读有关LINQ的更多信息:这是家庭作业吗?如果是这样,您是否需要使用一组特定的C特性?你已经在课程中被介绍过了不,这不是家庭作业;-我只是在一个私人项目中遇到这个问题。这是家庭作业吗?如果是这样,您是否需要使用一组特定的C特性?你已经在课程中被介绍过了不,这不是家庭作业;-我只是在一个私人项目中遇到这个问题。
List<MyClass> result = list.GroupBy(x => x.Name).Select(x => new MyClass() {Name=x.Key, Amount= x.Sum(y => y.Amount)).ToList();
var result = list.GroupBy(x => x.Name)
.Select(x => new ClassName { Name = x.Key, Amount = x.Sum(i => i.Amount) })
.ToList();