【问题标题】:Is there a way to load a dbset dynamically in EF core?有没有办法在 EF 核心中动态加载数据库集?
【发布时间】:2017-07-13 14:14:51
【问题描述】:

我想创建一个通用方法来动态加载 dbset 并执行一些操作。

例如这样的事情(假想方法):

 public IList<TEntity> GetData<TEntity>(DbSet<TEntity> entity) where TEntity : class
 {
   return DbContext<entity>.Load().Where(*Some Logic*).ToList();
 }

我想如果我执行原始 sql 查询,我可以满足要求。但我想在没有直接查询的情况下做到这一点。

有什么办法可以做到吗?

【问题讨论】:

    标签: c# entity-framework linq dynamic ef-code-first


    【解决方案1】:
    public IList<TEntity> GetData<TEntity>(Expression<Func<TEntity, bool>> expression) where TEntity : class
    {
        return _context.Set<TEntity>().Where(expression).ToList();
    }
    

    并使用:

    GetData<Contest>(t => t.IsOpened == true);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-05-17
      • 2022-10-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-15
      • 2021-07-27
      相关资源
      最近更新 更多