其中 IF 语句在 linq 查询 c# 中

本文关键字:查询 linq IF 语句 其中 | 更新日期: 2023-09-27 18:32:24

我有一个运行良好的linq查询,但是,如果我有一个空mySTRINGVAR,我想避免整个"where"过滤器,但是当我包含if语句时,它破坏了查询! 提前感谢您的帮助。

所以这就是我所拥有的,这非常有效!!

var records = from school in schools
   join tableA in tableAs on someid equals anotherid into tableC
   from tableD in tableC.Where(c => c.tablefield == mySTRINGVAR).DefaultIfEmpty()
   select new { etc.. }

但是,如果我的mySTRINGVAR为空或空,我试图不包含任何"where"语句:

var records = from school in schools
   join tableA in tableAs on someid equals anotherid into tableC
   from tableD in tableC.DefaultIfEmpty()
   select new { etc.. }

其中 IF 语句在 linq 查询 c# 中

但是,我试图不包含任何"哪里"语句,如果我 mySTRINGVAR 为空或空:

修改Where,如下所示:

tableC.Where(c => !string.IsNullOrEmpty(mySTRINGVAR) && c.tablefield == mySTRINGVAR)