EF Code First - 如何设置标识增量
Posted
技术标签:
【中文标题】EF Code First - 如何设置标识增量【英文标题】:EF Code First - how to set identity increment 【发布时间】:2012-07-03 04:05:46 【问题描述】:这显示了如何设置身份种子。
EF Code First - how to set identity seed?
dataannotations set identity seed value on Primary Key with code first
如何先使用代码设置标识增量值?
【问题讨论】:
对于 EF Core Identity 种子通知This Question 【参考方案1】:没有办法。
配置实体(约定、属性、流畅的 API)的任何方法都不允许这样做。您既不能使用自定义约定来实现它(简而言之,自定义约定检查列的名称、属性、类型、包含类型或任何内容,然后使用流式 API 配置列或实体)。至少达到 EF 6.1.1。
在 SQL Server 中操作标识的唯一方法是使用 DBCC CHECKIDENT
,但这仅允许更改种子值,而不是增量。
如果您想更改增量,您必须删除该列并在数据库初始化程序Seed
方法中再次创建它。问题是您必须删除并创建与此列相关的所有密钥(PK 或 FK)。 (这适用于 SQL Server 2014)
您可以查看at this answer,我在其中解释了可能的解决方案、替代方案和变通方法,哪些有效,哪些无效,以及投票链接以将其包含在未来的 EF 版本中。
【讨论】:
以上是关于EF Code First - 如何设置标识增量的主要内容,如果未能解决你的问题,请参考以下文章