用DbContext包装ObjectContext

时间:2015-02-20 14:23:36

标签: asp.net-mvc dbcontext objectcontext

我正在使用EF 6.x与MVC 4和VS2010。

我正在测试一个应用程序,我从现有数据库创建了数据库模型,实际上我已经将Edmx对象添加到了应用程序中。我正处于测试通用存储库工作统一的早期阶段。我复制/粘贴了一段代码,但ASP.NET website稍作调整,但我遇到ObjectContext没有Set()Entry()等功能的问题, Find()等。我尝试关注this answer on SO并将ObjectContext包裹在DbContext中:

public class GenericRepository<TEntity> where TEntity : class
{
    private DbContext _dbcontext;
    private StudentContext _context;
    private DbSet<TEntity> _dbSet;

    public GenericRepository(StudentContext context)
    {
        this._context = context;
        this._dbcontext = new DbContext(_context, true); // type mismatch of input parameters
        this._dbSet = _dbcontext.Set<TEntity>();
    }
    // ...
}

但由于输入参数错误,编译器不接受它。 _context源自ObjectContext。我很惊讶,因为在阅读this page后,我认为如果我提供DbContext(ObjectContext objectContext, bool dbContextOwnsObjectContext),构造函数DbContext可以创建StudentContext对象。

我错过了什么?

0 个答案:

没有答案