这显示了如何设置身份种子。
EF Code First - how to set identity seed?
dataannotations set identity seed value on Primary Key with code first
如何首先使用代码设置身份增量值?
答案 0 :(得分:3)
没有办法做到这一点。
配置实体(约定,属性,流畅API)的方法都不允许这样做。您既不能使用自定义约定来实现它(简而言之,自定义约定会检查名称,属性,类型,包含类型或列中的任何内容,然后使用流畅的API来配置列或实体)。至少达到EF 6.1.1。
在SQL Server中操作标识的唯一方法是使用DBCC CHECKIDENT
,但这只允许更改种子值,而不是增量。
如果要更改增量,则必须删除该列并在数据库初始化程序Seed
方法中再次创建该列。问题是您必须删除并创建与此列相关的所有密钥(PK或FK)。 (这适用于SQL Server 2014)
您可以查看at this answer,其中我解释了可能的解决方案,替代方案和解决方法,哪些方法有效,哪些无效,以及投票链接以便将其包含在EF的未来版本中。