【发布时间】:2014-10-23 23:02:59
【问题描述】:
好的,菜鸟问题。我有一组服务类,它们在构造函数中获取传递给它们的 dbcontext。我正在使用 ninject 来处理这个问题:
kernel.Bind<DbContext>().ToSelf().InRequestScope();
但是我收到错误消息:“操作无法完成,因为 DbContext 已被释放。”查询上下文时。
如果我只是在构造函数中创建一个新的上下文实例,而不是在所有工作中传递它。在 MVC asp.net 应用程序中这样做有什么问题吗?
【问题讨论】:
-
这意味着您正试图在已加载的实体中获取延迟属性,但此时您的 DBContext 已被释放。在 RequestScope 的情况下,您需要在 Request 末尾的某处处理 DBContext
标签: asp.net-mvc entity-framework ninject