1

我正在实现一个自定义 ASP.NET 成员资格提供程序,该提供程序基于自定义存储库类进行操作,该存储库类又使用实体框架 DbContext 作为访问数据的手段。

由于这是一个 ASP.NET MVC 应用程序,因此 IoC 容器 (Ninject) 被设置为解析我的 DbContext InRequestScope 的实例。

我的用户数据表是单个主 DbContext 的一部分。

Repository 类也必须在 InRequestScope 中实例化。但是repository类是为了满足自定义MembershipProvider的需要而创建的,不能设置为实例化InRequestScope。结果,每当我尝试通过存储库访问角色数据时,我都会得到 DbContext 已处置异常。

有没有人设置了类似的配置,如果是这样,为了克服我遇到的问题,采取了哪些不同的实施方式。谢谢。

4

1 回答 1

0

一个允许我继续项目开发的解决方法是在 Membership Provider 构造函数中手动创建一个 DbContext 实例,而不是让 Ninject 注入它。

也许有人最终会想出一个更好的方法来解决这个特定的问题,请在此处发布,我会将其作为答案而不是此解决方法。

于 2012-08-22T21:55:25.560 回答