我在使用代码优先方法在 SQL Compact 4 中的 Id 列上设置身份种子时遇到了一些问题。
我试过这个
context.Database.ExecuteSqlCommand("DBCC CHECKIDENT ('Members', RESEED, 100001");
但这在 Sql Compact 中不起作用。
我的数据库上下文:
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
SetupMemberEntity(modelBuilder);
}
private static void SetupMemberEntity(DbModelBuilder modelBuilder)
{
modelBuilder.Entity<Member>().Property(m => m.Id);
//.Property(m => m.Id).HasDatabaseGeneratedOption(DatabaseGeneratedOption.Identity);
modelBuilder.Entity<Member>().Property(m => m.FirstName).IsRequired();
modelBuilder.Entity<Member>().Property(m => m.LastName).IsRequired();
modelBuilder.Entity<Member>().Property(m => m.PinCode).IsRequired();
modelBuilder.Entity<Member>().Property(m => m.Email);
//modelBuilder.Entity<Member>().Property(m => m.DateCreated).HasDatabaseGeneratedOption(DatabaseGeneratedOption.Computed);
//modelBuilder.Entity<Member>().Property(m => m.DateModified).HasDatabaseGeneratedOption(DatabaseGeneratedOption.Identity);
}
我已向 Member 实体添加了另一个属性 MemberId 并尝试使用
context.Database.ExecuteSqlCommand("ALTER TABLE Members ADD MemberId INT IDENTITY(10000,1) PRIMARY KEY");
但是我收到一个表只能包含一个身份的错误消息,但我没有设置任何 IDENTITY 所以,Id 列是自动 IDENTITY 吗?