如果“属性”大于 0,则我的 LINQ 查询返回值,否则它不起作用并且我没有收到错误。我猜第三行中的 && 想要另一个声明,如果“属性”不大于 0,它不会得到。我该如何克服这个问题?
编辑:我首先编写的代码正在执行 abatishchev 的回答。我试图在没有 else 的情况下做一个速记 if 语句,但我读到了这个错误,所以代码是为了做其他事情,然后它实际上做了。感谢您对此事的启发,但我仍然不知道如何实现我最初对 linq 的愿望,所以我将代码重新排列为更接近我的目标的东西。
int attribute = 0;
var query = from x in db.Table1
where x.ValueId == 1
if(attribute > 0)
x.Table2.Attribute == attribute
select x;
如果属性大于 0,那么我不想在查询中添加额外的 where 子句。
感谢您的帮助。