猿问

如何使用 linq 或实体基于某些值选择不同值的列表

我想获得所有与 Pre_Number=null 相关的所有 Reconcile_Status 的 Pre_Number。在这种情况下,列表中不应该有任何项目。如果会有一些其他的 Pre_number 例如。7/2018 并且它有两条记录,并且这些记录的 Reconcile_Status 为 NULL,那么我应该在列表中获得一项 7/2018。

我试过


var NoNReconciled = context.tbl_prerelease_invoice

                           .Where(x => x.Reconcile_Status==null)

                           .Select(y => new { y.Pre_number }).Distinct().ToList();

但我得到了 6/2018


富国沪深
浏览 178回答 3
3回答

弑天下

无需为 Pre_Number 创建匿名对象。试试下面的代码var NoNReconciled = context.tbl_prerelease_invoice                           .Where(x => x.Reconcile_Status==null)                           .Select(y => y.Pre_number).Distinct().ToList();

料青山看我应如是

尝试这个-context.tbl_prerelease_invoice.GroupBy(r => r.Pre_number).Where(kv => kv.All(r => r.Reconcile_Status==null)).Select(kv => kv.Key).ToList();
随时随地看视频慕课网APP
我要回答