我在C#中有一个查询,我需要通过此查询对c.Same_invoice进行分组,并对分组的行中的列价格求和。Group By和Sum在LINQ查询中加入
我知道如何做分组和总和,但我不知道我的情况下的解决方案,加入和大量的数据。
实际的代码是:
var query = from c in snd.external_invoices.OrderByDescending(x => x.date)
join o in snd.invoices on c.idexternal_invoices equals o.id_external_invoice
select new{
c.idexternal_invoices,
c.businessname,
o.number,
c.message,
c.price,
c.date,
c.iduser
};
感谢所有
加入是一个非常,非常强烈的气味。实体之间的关系应在其映射中指定。 ORM(例如EF)只会在需要时生成适当的连接*,并只加载最终数据。在这种情况下,你甚至不需要分组,因为你返回所有的根对象。一个'c.Invoices.Sum(inv => inv.SomeField)'就足够了 –
我明白你在说什么,但是我正在为一家咨询公司工作,客户有一个实体框架项目但决定不添加映射到数据库。我不允许更改数据库或映射。我只能用我拥有的东西来工作。感谢您的回复 –
然后告诉他们他们必须修复他们的错误。无论如何,如果不知道你想要分组或总结什么,就无法提供帮助。你会如何在SQL中编写相同的语句? LINQ语句将是等效的。而客户仍然有一个非常丑陋的错误 –