使用datacontext的where linq计算字段的最快总和
本文关键字:字段 计算 datacontext where linq 使用 | 更新日期: 2023-09-27 18:27:32
我想转换我的代码:
using (DatabaseDataContext contestoDB = new DatabaseDataContext())
{
contestoDB.ObjectTrackingEnabled = false;
DateTime dataSelezionata = DateTime.Parse(data);
var elencoOre = (from db in contestoDB.Eventi
where db.DataPrenotazione.Date == dataSelezionata.Date select db);
foreach (var o in elencoOre)
oreOccupate += o.OrePreviste;
}
在这个类似的函数中,获得字段的和,其中:D:
var sum = contestoDB.Eventi.Sum(x => x.OrePreviste);
sum必须是int值。。。谢谢M.W.
请参阅以下内容:
var sum = contestoDB.Eventi
.Where(w => w.DataPrenotazione.Date == dataSelezionata.Date)
.Sum(x => x.OrePreviste);
您只需进行一个投影,并获取投影值的总和。
var sum = (from db in contestoDB.Eventi
where db.DataPrenotazione.Date == dataSelezionata.Date
select db.OrePreviste).Sum();
或者等效地尝试这个:
var sum = contestoDB.Eventi
.Where(evt => evt.DataPrenotazione.Date == dataSelezionata.Date)
.Sum(evt => evt.OrePreviste);