【发布时间】:2012-07-28 17:55:28
【问题描述】:
我在使用代码优先方法在 SQL Compact 4 中的 Id 列上设置身份种子时遇到了一些问题。
我试过了
context.Database.ExecuteSqlCommand("DBCC CHECKIDENT ('Members', RESEED, 100001");
但这在 Sql Compact 中不起作用。
MyDbContext:
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);
}
我已向成员实体添加了一个属性 MemberId 并尝试使用
context.Database.ExecuteSqlCommand("ALTER TABLE Members ADD MemberId INT IDENTITY(10000,1) PRIMARY KEY");
但我收到一个表只能包含一个身份的错误消息,但我没有设置任何 IDENTITY 所以,Id 列是自动 IDENTITY 吗?
【问题讨论】:
标签: entity-framework-4 ef-code-first sql-server-ce identity-column