Sql server 2012 当标识列值不同时传输数据

Sql server 2012 当标识列值不同时传输数据,sql-server-2012,asp.net-mvc-5,ef-code-first,entity-framework-migrations,Sql Server 2012,Asp.net Mvc 5,Ef Code First,Entity Framework Migrations,我正在重组数据库并创建MVC5应用程序。有许多表是规范化的,但很少保持不变。在原始数据库表中,删除了几行。所以表格数据如下所示 Id Column1 -------------------- 1 Some value 2 Some value 4 Some value 8 Some value 9 Some value 现在,我首先使用代码创建新数据库,其中包含一些新的和一些现有的数据库表。在我的实体模型中,我使用以下代码将字段标

我正在重组数据库并创建MVC5应用程序。有许多表是规范化的,但很少保持不变。在原始数据库表中,删除了几行。所以表格数据如下所示

Id      Column1  
--------------------
 1     Some value
 2     Some value
 4     Some value
 8     Some value
 9     Some value
现在,我首先使用代码创建新数据库,其中包含一些新的和一些现有的数据库表。在我的实体模型中,我使用以下代码将字段标记为主键和标识

[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int ID { get; set; }
现在,由代码创建的表首先具有ID列的自动递增值

Id      Column1  
--------------------
 1     Some value
 2     Some value
 3     Some value
 4     Some value
 5     Some value

第一个表的记录数大于100。此表的ID列也用作另一个表的外键,该表有近1000条记录。现在我面临的问题是如何解释原始表ID和新创建的ID之间的差异。如果我尝试显式指定ID列的值,那么它会给出一个错误,即我无法显式指定标识列的值。我必须为这两个表编写一个seed方法。处理这种情况的正确方法是什么?

如果需要在标识列中插入特定值,请查看设置标识。\u INSERT ON。如果需要在标识列中插入特定值,请查看设置标识。\u INSERT ON。如果需要在标识列中插入特定值,请查看设置标识。\u INSERT ON。