我是新手,Linq因此下面有这些情况.
现在编译过程中出现错误,说 Cannot implicitly convert type 'System.Linq.IQueryable' to 'System.Data.Entity.DbSet'.
var query = _db.Products;
if (bool) {
query = query.Where(p => p.Id == id);
}
Run Code Online (Sandbox Code Playgroud)
所以,我试图改变var到IQueryable和它的作品.
IQueryable<Product> query = _db.Products;
if (bool) {
query = query.Where(p => p.Id == id);
}
Run Code Online (Sandbox Code Playgroud)
但后来,我试图再次改变它(见下文)并且它有效.
var query = from product in products
select product;
if (bool) {
query = query.Where(p => p.Id == id);
}
Run Code Online (Sandbox Code Playgroud)
我只是想知道为什么另一个有效,但另一个没有.
一个很好的例子可能有帮助.谢谢