Search code examples
c#.net-4.0entity-framework-4.1code-first

Code-First Entity Framework inserting data with custom ID


I am using code-first EF in my project and face issue when the data with custom id is being inserted.

When I am trying to insert data with custom ID (for instance 999), EF ignores it and inserts incremented ID into table.

My model:

public class Address
{
        [Key]
        public int Id { get; set; }
        public string FirstName { get; set; }
...
}

How to solve this probleb?

EDIT:

1) How to begin incrementing from N, but not from 0?

2) If I don't specify custom ID, DB must increment and inserts own. If I specify custom ID, DB must insert it. Is it possible?


Solution

  • you can use the following attribute

    [Key, DatabaseGenerated(DatabaseGeneratedOption.None)]
    

    on the key to your class or using fluentAPI

    modelBuilder.Entity<Address>().Property(p => p.Id).HasDatabaseGeneratedOption(DatabaseGeneratedOption.None);