java 扩展属性,如何使用自定义属性扩展IdentityUser

如果您按照向用户添加自定义字段的所有步骤操作,您将成功完成任务 .

以下是向用户添加自定义字段的所有步骤:

创建ASP.NET Web应用程序

确保选择MVC,并且身份验证是单个用户帐户

转到Models文件夹→打开IdentityModels.cs→ApplicationUser类并添加属性:

public string Code { get; set; }

构建项目

转到工具菜单→Nuget包管理器→单击包管理器控制台

键入 Enable-Migrations 并按Enter键并等待任务完成 . 你会看到一个回复说:

检查上下文是否以现有数据库为目标......

为项目WebApplication1启用了代码优先迁移 .

键入 Add-Migration "Code" 并按Enter键并等待任务完成 . 你会看到一个回复说:

脚手架迁移'代码' . 此迁移的Designer代码

file包含当前Code First模型的快照 . 这个

快照用于计算模型的更改

脚手架下一次迁移 . 如果您对其进行了其他更改

您希望包含在此迁移中的模型,然后您可以

通过再次运行“添加迁移代码”重新构建它 .

键入 Update-Database 并按Enter键并等待任务完成 . 你会看到一个回复说:

指定'-Verbose'标志以查看正在应用的SQL语句

到目标数据库 .

应用显式迁移:[201611132135242_Code] .

应用显式迁移:201611132135242_Code .

运行种子方法 .

在此步骤中,如果刷新SQL Server对象资源管理器并转到数据库并查看表,则在列下的 dbo.AspNetUsers 下,您将看到 Code 字段 . 如果您不知道应该查找哪个数据库甚至是哪个服务器,请打开Web.Config文件并查看连接字符串,如下所示:

providerName="System.Data.SqlClient" />

您可以看到数据源(这是sql server实例)和.mdf这是数据库名称 .

转到Models文件夹→打开AccountViewModels.cs文件→RegisterViewModel类并添加此属性:(在APIv2中使用EF6,可以在Models文件夹中添加以下行→AccountBindingModels文件→RegisterBindingModel类)

public string Code { get; set; }

转到Views文件夹→帐户文件夹→打开Register.cshtml文件,并将此代码添加到其他字段附近,例如密码:

@Html.LabelFor(m => m.Code, new { @class = "col-md-2 control-label" })

@Html.TextBoxFor(m => m.Code, new { @class = "form-control" })

转到Controllers文件夹→打开AccountController.cs文件→在http post Register操作中,将创建用户的行更改为:

var user = new ApplicationUser { UserName = model.Email, Email = model.Email,

Code= model.Code };

运行项目并转到 /Account/Register url并注册新用户 . 注册用户后,如果再次访问数据库并查看dbo.AspNetUsers表的数据,您将看到代码已保存 .

Download

您可以在此处克隆或下载一个工作示例:

Further reading - How to Add a custom Property to IdentityRole?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值