gpt4 book ai didi

C# LINQ分组和计数问题

转载 作者:行者123 更新时间:2023-11-30 18:27:11 27 4
gpt4 key购买 nike

我有以下查询,将一组打印机分组,然后计算它们的停机时间。我想做的是获取每个组中有多少台打印机。我不确定我是需要运行两个查询还是可以一次完成?

查询:

var records = (from r in SharePoint.Records
group r by new
{
Printer = getValue(r.Values["ows_printer_id_x003a_Device"]),
} into g
select new
{
Printers = g.Key.Printer,
CurrentHours = g.Sum(x => getDownTime(x.Values["ows_Downtime"])),
// Total = g.Count()
//CTDHours = g.Sum(x => x.Field<int>("CurrentHours") + x.Field<int>("CTDHours"))
});

最佳答案

var records = (from r in SharePoint.Records
group r by new
{
Printer = getValue(r.Values["ows_printer_id_x003a_Device"]),
} into g
select new
{
Printers = g.Key.Printer,
CurrentHours = g.Sum(x => getDownTime(x.Values["ows_Downtime"])),
Total = g.Count()
});

Total = g.Count 应该有效。

我很好奇您为什么要在此处使用 getValue(),我认为这就是您的问题所在。 Printer = r.ows_printer_id_x003a_Device 不起作用吗?您是否验证了“ows_printer_id_x003a_Device”成员中的数据,查询的那部分是否产生了您想要的分组?尝试使用 LinqPad 将其分解。

关于C# LINQ分组和计数问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27151833/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com