You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

LINQ C#中GroupBy添加Where子句后无结果的问题排查

问题排查与解决

你的查询返回空结果,核心问题出在Where条件里的**tip=="receipts"**这部分——你没有引用实体对象i的tip字段,而是直接用了一个可能未定义或值不对的变量tip,导致筛选条件完全不匹配数据库中的记录。

修正后的代码如下:

var centralizator_rc = db.register_operation
    .Where(i => i.data.Day == 19 && i.data.Month == 9 && i.tip == "receipts")
    .GroupBy(i => i.id_cont_sintetic)
    .Select(g => new {
        id_cont_sintetic = g.Key,
        total_receipts = g.Sum(i => i.suma),
    }).ToList();

另外补充两个潜在排查方向:

  • 时区/时间格式问题:如果数据库data字段带时区或存储UTC时间,直接取Day和Month可能和本地时间不匹配,可先转换为统一时区再筛选,比如i.data.ToLocalTime().Day(根据实际场景调整)。
  • 字符串大小写问题:若数据库字符串比较区分大小写,要确保"receipts"和库中存储的大小写完全一致,或改用不区分大小写的比较:i.tip.Equals("receipts", StringComparison.OrdinalIgnoreCase)。

内容的提问来源于stack exchange,提问作者ivf1971

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 19:40:31