我对 SimpleMembership 及其在 ASP.NET MVC 网站中的使用有点困惑。
我的项目目前使用代码优先的 dbcontext,它位于一个名为“数据访问”的类库中。
我有另一个名为“DomainObjects”的类库,其中包括我在“数据访问”中声明的 dbcontext 使用的所有实体/对象。
我有另一个名为“DomainFactory”的项目,顾名思义,它公开了访问数据上下文、操作数据等的方法。
最后,我有一个名为“Web”的 MVC 4 应用程序(该应用程序实际上使用 IoC 来调用在“DomainFacotry”项目中声明的方法——但我认为这与我在这里想要实现的目标无关。)
我的 MVC 应用程序现在处于我希望为其添加安全性的阶段。
使用基本 Internet 应用程序模板,我可以看到 AccountModel.cs 文件中声明了一个 UsersContext,该上下文在整个应用程序中被大量使用。这不是我想要的行为。为了可测试性和关注点分离,我希望我的所有身份验证逻辑都由我的域类处理,但是,我不确定如何去做,希望能回答以下问题:
因为我的 MVC 应用程序没有引用我创建的 dbcontext,我如何重新生成和重新植入数据库?我应该使用 WebActivator 吗?这是首选方法吗?
将所有身份验证逻辑移至我的 DomainFactory 项目的最佳方法是什么?如果你这样做了,你是怎么做的?
使用我上面描述的方法时有什么需要注意的吗?
非常感谢