【发布时间】:2016-06-23 10:10:52
【问题描述】:
我在MVC 应用程序中使用ASP.NET Identity 2.0,并且有一个名为AspNetUsers 的默认表,以便将用户数据保存在以下列中:
AspNetUsers:
Id
Email
EmailConfirmed
PasswordHash
... etc
我知道我可以将自定义属性添加到此实体,如 Name、Surname 等到此 AspNetUsers 表。但是,我的项目中有两种类型的用户:Student 和 Professor。因此我需要使用不同的属性,如下所示:
学生:
Id
Name
Surname
Email
StudentNumber
Department
教授:
Id
Name
Email
Surname
Profession
RoomNumber
此时我在组合这些实体时遇到了问题,我不知道如何组合它们。学生和教授存储在AspNetUsers 表中,我认为没有必要在不同的表上定义与Email 相同的数据,最好只使用Student 和Professor 表中的不同属性作为StudentNumber、RoomNumber 等。当用户登录系统时,我想先使用AspNetUsers 表,然后从Student 或Professor 表中获取当前用户的详细数据。对于这种情况有更好的方法吗?我认为ASP.NET Identity 是常用的,很多人需要为不同类型的用户存储不同的详细属性。任何帮助,将不胜感激。
【问题讨论】:
-
您描述的方法有什么问题?我自己做,效果很好
-
我只是想确定是否有更好的方法以及这种方法是否良好。如果您有想法,请您看看下面的 3 个问题并发表您的意见吗?谢谢。
标签: asp.net asp.net-mvc entity-framework asp.net-identity asp.net-identity-2