我已经更新了我的ASP.NET标识代码,以便使用long(SQL中的bigint)而不是GUID:字符串作为用户主键。现在,我想使用密钥生成器来创建自己的主键,而不是让实体框架生成顺序密钥。我不确定要编辑或覆盖什么类或方法来实现这一点。
谷歌一直在告诉我如何改变PK类型,我已经想好了。SO上的一个类似问题想知道密钥是如何生成的(答案:由EF生成),但没有问自己如何生成。
在这里,您将找到所有必须"实现"(至少从继承)的类。还有一些小的需要改变的地方。ASP.NET Identity 2在CodeProject 上将主键类型更改为Integer
如果你还想生成自己的Id(不要让SQL Server生成它们),你可能需要像链接帖子中那样调整PK。
如果您的目标是SQL数据库,您可以使用sequence。这将允许您创建一个基本PK并为下一个PK设置增量。