【发布时间】:2015-01-07 16:40:17
【问题描述】:
我有一个 PHP/MySQL 系统,我正在使用 Azure SQL 将其移植到 ASP.NET MVC5。我在理解 Microsoft 引入的新身份解决方案的概念时遇到了问题。由于数据库结构从之前的系统中存在,我已经将旧的 MySQL 数据库转移到 Azure SQL。到目前为止,一切都很好。我有一个包含所有用户相关数据的用户表,例如用户名、电子邮件密码等。因为我想继续使用此表,所以我创建了 Identity 用户表中存在的额外数据库字段。我还创建了自定义 UserManager 和其他类(MyUser、MyClaim 等),因此我能够登录。一切正常。
由于我采用的是数据库优先方法,而不是代码优先方法,因此我想使用 User 类与用户表进行交互。但我的 UserManager 返回 MyUser 类(继承自 IdentityUser),而不是我模型中的 User 类。当我询问 User 表中的所有用户时,甚至我的 dbcontext 也会返回 MyUser 类。
我是否真的需要手动更新 MyUser 类来复制 User 表,所以如果我在 User 表中进行更改并更新我的模型,我必须手动更新 MyUser 类,因为系统无法/woun '不使用模型用户类?
【问题讨论】:
-
我建议实现custom membership。
-
谢谢,我会调查的!
-
@AndreiV 我强烈反对在任何新开发中使用 MembershipProvider。身份框架比你所说的贬义方法要好得多。
-
对不起,我不清楚你的问题。
User和MyUser类之间有什么区别?他们在不同的桌子上吗?你能显示他们的代码吗?为什么你有 2 个? -
@trailmax 我对你的说法没有反对意见。但是,我不禁注意到您所写内容中的 new 一词以及问题的上下文。他们并没有真正齐头并进。我希望您能就在这种情况下如何使用身份框架提供一些指导,因为我也有类似的问题。
标签: c# asp.net-mvc asp.net-identity