众所周知,我们可能会将基于 ASP.NET Identity 的配置文件信息扩展到另一个表或将其包含到默认表(ASPNetUsers
)。
假设我在注册时只有两个字段需要填写(用户名和电子邮件),但是在完成注册后,用户可能会也可能不会选择填写额外的个人资料信息(例如性别、生日、真实姓名等) .
我有两种选择,但不确定哪种方式更合适。
- 所有个人资料信息(用户名、电子邮件、性别、生日、真实姓名)都包含在默认身份
ASPNetUsers
表中。 - 默认身份
ASPNetUsers
表所需的注册信息(用户名和电子邮件),而额外的个人资料信息位于另一个链接到默认身份ASPNetUsers
表的表中。
或者有更好的选择吗?希望我们能在这次讨论中有所收获。
最佳答案
我会选择选项 2。因为配置文件可能会更改。此外,如果我需要将身份取出到其他服务器,很容易将它们带到那里。或稍后扩展到联合身份(好吧.. 由于同步问题,这可以双向执行)。
关于使用 ASP.NET Identity 进行数据库设计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25680127/