建 网站 是软件开发,wordpress非会员禁止查看,做网站申请多少类商标,昆山网站制作 微博前言原本本节内容是不存在的#xff0c;出于有几个人问到了我#xff1a;我想使用ASP.NET Core Identity#xff0c;但是我又不想使用默认生成的数据库表#xff0c;想自定义一套#xff0c;我想要使用ASP. NE Core Identity又不想使用EntityFramework Core。真难伺候出于有几个人问到了我我想使用ASP.NET Core Identity但是我又不想使用默认生成的数据库表想自定义一套我想要使用ASP. NE Core Identity又不想使用EntityFramework Core。真难伺候哈哈不过我认为这个问题提出的非常有价值所以就私下花了点时间看下官网资料最终经过尝试还是搞出来了不知道是否满足问过我这个问题的几位童鞋废话少说我们直接进入主题吧。ASP.NET Core Identity自定义数据库表结构别着急哈我是那种从头讲到尾的人博文基本上面向大众没什么基础的和有经验的都能看明白也不要嫌弃我啰嗦好我说完了开始开始又说了一大堆。大部分情况下对于默认情况下我们都是继承自默认的身份有关的类如下然后添加身份中间件最后开始迁移如下以上是默认为我们生成的数据表我们可以指定用户表主键、可以修改表名、列名等等以及在此基础上扩展属性都是可以的但是我们就是不想使用这一套需要自定义一套表来管理用户身份信息那么我们该如何做呢其实呢官网给了提示如下链接https://docs.microsoft.com/en-us/aspnet/core/security/authentication/identity-custom-storage-providers?viewaspnetcore-2.2只是说的不是很明确然后有些童鞋就不知所措了就是那么几个Store自定义实现就好了来我们走一个。我们首先自定义用户比如如下我们再来定义上下文如下接下来实现IUserStore以及UserPasswordStore接口接口太多就全部折叠了我们还要用到用户角色表自定义用户角色简单来说就是根据需要看看要不要实现如下几个Store罢了IUserRoleStoreIUserClaimStoreIUserPasswordStoreIUserSecurityStampStoreIUserEmailStoreIPhoneNumberStoreIQueryableUserStoreIUserLoginStoreIUserTwoFactorStoreIUserLockoutStore然后对于根据选择自定义实现的Store都进行注册然后进行迁移如下没什么难题还是那句话自定义实现一套不过是实现内置的Store其他通过定义的上下文正常去管理用户即可。然后什么登陆、注册之类只需要将对应比如UserManager泛型参数替换成对应比如如上CustomUser即可这个就不用多讲了。接下来我们再来看第二个问题如何不使用EntityFramework而是完全使用Dapper。完全使用Dapper而不使用EntityFramework Core其实讲解完上述第一个问题这个就迎刃而解了我们已经完全实现了自定义一套表第一个问题操作表是通过上下文我们只需将上下文更换为Dapper即可如上我们定义了用户角色表那我们通过Dapper实现角色表如下定义角色别忘记每自定义实现一个Store然后进行对应注册总结这里已经提供了完全自定义实现一套表和不使用EntityFramework Core完全使用Dapper的思路重申一句官网给出了几个Store只是未明确说明而已稍微思考并动手验证其实问题不大。原文链接https://www.cnblogs.com/CreateMyself/p/11291623.html.NET社区新闻深度好文欢迎访问公众号文章汇总 http://www.csharpkit.com