我有如下所示的linq声明:
var biosample= (from a in db.Biosample
select a);
if (catalognbr != -1)
{
biosample.Where (a => a.Catalog_nbr ==catalognbr);
}
如果用户选择catalognbr,则查询会连接where条件,否则会跳过where。现在它不按我想要的方式工作。如何使它工作?
感谢。
答案 0 :(得分:1)
您可以在查询中加入catalognbr支票
ORA-00928: missing SELECT keyword
00928. 00000 - "missing SELECT keyword"
您还可以通过将结果分配回biosample
来进行初始尝试var biosample= (from a in db.Biosample
select a)
.Where (a => catalognbr == -1 || a.Catalog_nbr ==catalognbr);
答案 1 :(得分:0)
在你的代码中写这样的内容;
biosample = biosample.Where (a => a.Catalog_nbr ==catalognbr);