Code-First Entity Framework使用自定义ID插入数据

Ser*_*lyi 8 c# .net-4.0 code-first entity-framework-4.1

我在项目中使用代码优先EF,并在插入带有自定义ID的数据时遇到问题.

当我尝试使用自定义ID(例如999)插入数据时,EF忽略它并将增加的ID插入表中.

我的模特:

public class Address
{
        [Key]
        public int Id { get; set; }
        public string FirstName { get; set; }
...
}
Run Code Online (Sandbox Code Playgroud)

如何解决这个问题?

编辑:

1)如何从N开始递增,而不是从0开始递增?

2)如果我没有指定自定义ID,DB必须递增并插入自己的ID.如果我指定自定义ID,则DB必须插入它.可能吗?

JTM*_*Mon 19

您可以使用以下属性

[Key, DatabaseGenerated(DatabaseGeneratedOption.None)]
Run Code Online (Sandbox Code Playgroud)

关于你班级的关键或使用流利的API

modelBuilder.Entity<Address>().Property(p => p.Id).HasDatabaseGeneratedOption(DatabaseGeneratedOption.None);
Run Code Online (Sandbox Code Playgroud)