【发布时间】:2016-07-30 19:33:45
【问题描述】:
我在我的 MVC5 项目中使用 ASP.NET Identity 2.0 并希望将 AspNetUsers 的 id 字段的数据类型从 string (GUID) 更改为 int,因为我有一些与 AspNetUsers 表相关的表。我在How to change type of id in Microsoft.AspNet.Identity.EntityFramework.IdentityUser 上查看了许多页面,但似乎并不容易申请。另一方面,我看到更改 AspNetUsers 实体的 id 字段的数据类型是不够的,因为其他身份类型(即 AspNetUserRoles、ApplicationGroupRoles 等)之间存在一些 pk/fk 关系。在这种情况下,我应该使用身份表的原始数据类型并将我的表的 id 类型从 int 更改为 string?或者如何在 ASP.NET Identity 2.0 中轻松更改所有身份表的数据类型?如果这在 3.0 版本中更容易,我也可以使用它。
【问题讨论】:
-
为什么你不让带有字符串 Id 的用户和所有其他带有 int Id 的表?
-
@LucianBumb 我不确定 PK/FK 关系是否是个好主意。所以,我认为最好的想法是使用 int 自定义表并将 id 类型从字符串转换为 int 用于 asp.net 身份表。有什么建议吗?
-
伙计,我为做你现在正在尝试的事情付出了很多努力,因为我确信我不能在某些实体中拥有
stringId,在其他实体中拥有int,直到我决定做一个测试,看看会出现什么问题。结果没问题!你只需要小心,userId就是string。
标签: asp.net-mvc asp.net-identity guid asp.net-identity-2 asp.net-identity-3