2

我有一个 asp.net mvc 项目,它使用 asp.net Identity 对用户进行身份验证。该数据库是在实体框架设计器中设计的。

有一个名为“Farmers”的表,我想允许每个农民登录到应用程序。据我所知,为了实现这一点,农民必须从 IdentityUser 继承,但我如何在实体框架设计器中做到这一点?

4

3 回答 3

0

你的mvc版本是什么??

在 mvc5 中这是一个很好的响应

http://blogs.msdn.com/b/webdev/archive/2013/10/16/customizing-profile-information-in-asp-net-identity-in-vs-2013-templates.aspx

这样你就可以混合两张桌子。

另一种方法是在使用的两个表之间创建关系

User.Identity.Name or

User.Identity.GetHashCode

使用它来获取已连接用户的值

于 2014-08-22T23:23:25.003 回答
0

经过大量研究后,我发现使用实体框架设计器无法从 ApplicationUser 或 IdentityUser 继承。

我的解决方案是从现有数据库创建 Code First 模型,然后从 ApplicationUser 继承。

于 2014-09-10T06:53:03.343 回答
0

据我所知,你不能真正做到这一点,我认为即使你可以,你也不应该尝试这样做。

通过从 IdentityUser 继承,您是说 Farmer 可以通过 SecurityStamp、Roles 或 PasswordHash(从 IdentityUser 继承)等属性来描述,从设计的角度来看,这没有多大意义。

如果您正在寻找用户和农民之间的直接关联,您可以简单地在农民模型中添加所需的 UserId 属性。因此,每当您创建一个新的 UserIdentity 实例时,您也会创建一个新的 Farmer 实例,并将 UserId 设置为新创建的 UserIdentity 的 Id 属性。

于 2014-10-31T10:33:01.003 回答