我有一个完美运行的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
为null或为空,我试图不包括任何“ 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.. }
最佳答案
但是,如果我的
mySTRINGVAR为null或为空:
修改Where
如:
tableC.Where(c => !string.IsNullOrEmpty(mySTRINGVAR) && c.tablefield == mySTRINGVAR)
关于c# - LINQ查询中的if语句在哪里,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18966142/