MVC5 identity将userId存储在字符串中,但是为什么?
如果你不想回答这个问题,你可以随意发布如何将用户id'z存储为int's的链接
对一个错得很严重的人来说,你似乎很粗鲁。
ASP。NET Identity不使用字符串作为Id,它只是在visual studio为"初学者项目"生成的模板中默认使用字符串作为Id。你可以通过定义一个新的IdentityUser类型来使用任何你想要的Id。就像你不需要为你的视图、控制器或其他任何东西使用提供的模板一样。
见https://stackoverflow.com/a/23573049/61164
它使用字符串的原因是因为starter项目模板中的默认标识类型是Guid,不是所有数据库类型都支持(记住,它支持的不仅仅是SQL Server)。因此,出于兼容性的考虑,它使用字符串来存储它们。
我猜它对Id使用了不同的方案
如果你要检查你的数据库,一个示例Id看起来像这样
" 62 e41fbc - dbd6 41 - d2 - 8209 - 0 - fdf29fb1908"
假设这是哈希值或加密值
如果你想将它们存储为整数或创建Id计数,你可以在表中添加另一个条目(ASPUserId),然后将其设置为整型,然后每次创建条目