Bla*_*ell 6 c# asp.net entity-framework asp.net-identity asp.net-core
是否可以在没有实体框架和实体框架迁移的情况下使用 ASP.NET Identity?我的应用程序的其余部分将使用 Micro ORM 进行数据访问。但是,该应用程序使用内置的 ASP.NET 标识个人用户帐户。
我的目标是仍然能够使用内置的 UserManager 和 LoginManager 类,并另外检索使用 Micro ORM 的用户列表,并消除与 EF/Migrations 相关的任何事情。这可能吗?似乎并非如此,因为原始数据库结构是通过应用初始迁移创建的。
如果有人有这样做的好技术,请分享。
首先,您需要创建一个自定义用户存储:
public class UserStore : IUserStore<IdentityUser>,
IUserClaimStore<IdentityUser>,
IUserLoginStore<IdentityUser>,
IUserRoleStore<IdentityUser>,
IUserPasswordStore<IdentityUser>,
IUserSecurityStampStore<IdentityUser>
{
// interface implementations not shown
}
Run Code Online (Sandbox Code Playgroud)
然后需要将其注册到依赖注入容器中:
// Add identity types
services.AddIdentity<ApplicationUser, ApplicationRole>()
.AddDefaultTokenProviders();
// Identity Services
services.AddTransient<IUserStore<ApplicationUser>, CustomUserStore>();
services.AddTransient<IRoleStore<ApplicationRole>, CustomRoleStore>();
Run Code Online (Sandbox Code Playgroud)
这在此处记录。