如何将IQueryable <t>转换为DbSet <t>?

时间:2017-04-16 11:57:09

标签: c# entity-framework linq

public DbSet<Item> Items 
{ 
    get 
    { 
        return dbContext.Item.Where(x => x.Id == id).Select(x=>x)
    }
} 

上面的代码导致编译错误:

  

无法将类型'System.Linq.IQueryable隐式转换为... DbSet   存在显式转换(您是否错过了演员?)

添加显式强制转换后:

public DbSet<Item> Items 
{
     get 
     { 
         return (DbSet<Item>)(dbContext.Item.Where(x => x.Id == id).Select(x => x))
     }
} 

发生运行时错误:

  

其他信息:无法将类型为'Microsoft.EntityFrameworkCore.Query.Internal.EntityQueryable'1[Item]'的对象强制转换为''Microsoft.EntityFrameworkCore.DbSet'1 [Item]'

有什么想法吗?

0 个答案:

没有答案