我一直在读
various其他
questions关于使用
asp.net-identity,但是当项目开发阶段时,我没有看到有什么具体的使用现有数据库.为了论证,说出以下几点:
>解决方案
> WebUI
>服务
> UserService
>数据
> MyDbContext
>核心
>用户
如何将User(从Core项目)指定为新的身份提供者的IUserStore?我缺少某些东西,或者这样做都假定网站和会员数据库始终位于同一个项目中(或者是在模型所在的位置对Microsoft.AspNet.Identity.*库进行严格的引用)?
在WebUI层设置一个DbContext只是为了进行身份验证(并将其绑定到“MyDbContext”和服务)似乎很麻烦.我错过了一些东西,还是团队只是计划在简单的应用程序中使用?
反馈将不胜感激.
更多信息
如果值得一提:
>这将是一个全新的解决方案;我没有旧的/现有的aspnet_ *或webpages_ *表担心.我正在尝试采取各种其他定制解决方案,并将其捆绑到一个坚实的解决方案,所以我开放了很多选择.但是,我想保持层层分解(如果可能的话).
解决方法
Asp.net Identity Framework是帮助应用程序使用User Identity的组件集.核心框架块位于Microsoft.AspNet.Identity.Core程序集中.第二个Microsoft.AspNet.Identity.EntityFramework是Core框架的数据持久性实现.
现在,对于n层应用程序,您可以在任何项目/程序集中定义AppUser模型.您需要从Microsoft.AspNet.Identity.EntityFramework.IdentityUser继承它.所以根据你的方法,你需要参考具体的程序集.
与MyDbContext相同.您必须从当前唯一可用的持久性Microsoft.AspNet.Identity.EntityFramework.IdentityDbContext< TUser> ;.继承.您的MyDbContext可以在其他项目/程序集中.您还需要在此项目/程序集中引用您的AppUser程序集.