相关疑难解决方法(0)

无法将类型'System.Linq.IQueryable'隐式转换为'System.Data.Entity.DbSet'

我是新手,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)

所以,我试图改变varIQueryable和它的作品.

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)

我只是想知道为什么另一个有效,但另一个没有.

一个很好的例子可能有帮助.谢谢

c# linq

23
推荐指数
2
解决办法
3万
查看次数

标签 统计

c# ×1

linq ×1