我在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語句將是等效的。而客戶仍然有一個非常醜陋的錯誤 –