C#LINQ:将细节对象投影到摘要对象中

C#LINQ:将细节对象投影到摘要对象中,c#,linq,C#,Linq,我有一个.csv,数据如下所示: Account,Debit,Credit 1,10.00,5.00 1,10.00,10.00 2,5.00,5.00 2,10.00,10.00 此数据填充一个IEnumerable。定义如下: 公共类详细信息{ 公共字符串帐户{get;set;} 公共十进制借方{get;set;} 公共十进制信用{get;set;} } 我试图将这个“细节”对象合并并投影到一个汇总对象中,其中Total是每个帐户的借项和贷项之和 公共类摘要{ 公共字符串帐户{g

我有一个.csv,数据如下所示:

Account,Debit,Credit

1,10.00,5.00

1,10.00,10.00

2,5.00,5.00

2,10.00,10.00
此数据填充一个
IEnumerable
。定义如下:

公共类详细信息{
公共字符串帐户{get;set;}
公共十进制借方{get;set;}
公共十进制信用{get;set;}
}
我试图将这个“细节”对象合并并投影到一个汇总对象中,其中Total是每个帐户的借项和贷项之和

公共类摘要{
公共字符串帐户{get;set;}
公共十进制总数{get;set;}
}
我想要的最终结果是一个清晰的帐户列表,其中每个帐户都有所有的借项和贷项,因此,我有一个摘要预测,而不是每个帐户/借项/贷项多行

Account,Debit,Credit


1,5.00,0.00 

2, 0.00, 0.00
假设
detailrecords
是类型
IEnumerable
的填充集合

var results=detailrecords
.GroupBy(x=>x.Account)
.Select(c=>newsummary(){
Account=?我不知道如何在此处访问我的详细信息属性
Total=?我不知道如何在不访问详细属性的情况下执行算术
}).ToList();

您要查找的内容如下:

var results = detailRecords
        .GroupBy(x => x.Account)
        .Select(c => new Summary
        {
            Account = c.Key,
            Total = c.Sum(y => y.Credit + y.Debit)
        }).ToList();

您正在寻找的是以下内容:

var results = detailRecords
        .GroupBy(x => x.Account)
        .Select(c => new Summary
        {
            Account = c.Key,
            Total = c.Sum(y => y.Credit + y.Debit)
        }).ToList();

@迈克:太棒了@迈克:太棒了!