7
EF5
とCode First
を使用してデータベースを作成しています。エンティティにId field
がある場合、EFはPrimary Key
というフィールドをデータベースに作成し、をtrue
(自動生成値)に設定します。 Identity specification to false by default
の設定方法は?ID指定をfalseに設定
EF5
とCode First
を使用してデータベースを作成しています。エンティティにId field
がある場合、EFはPrimary Key
というフィールドをデータベースに作成し、をtrue
(自動生成値)に設定します。 Identity specification to false by default
の設定方法は?ID指定をfalseに設定
IDキーを使用しない場合は、いくつかのオプションがあります。
オプション1:あなたがグローバルStoreGeneratedIdentityKeyConvention
を削除することで、この機能をオフにすることができます
public class YourContext : DbContext {
protected override void OnModelCreating(DbModelBuilder modelBuilder) {
modelBuilder.Conventions.Remove<StoreGeneratedIdentityKeyConvention>();
}
}
あなたが選択キーを選択して適用する属性または流暢なマッピングのいずれかで彼らのために動作を変更することができます。
オプション2:属性:
public class MyEntity {
[DatabaseGenerated(DatabaseGeneratedOption.None)]
public int Id { get; set; }
}
オプション3:流暢API:
public class YourContext : DbContext {
protected override void OnModelCreating(DbModelBuilder modelBuilder) {
modelBuilder.Entity<MyEntity>()
.Property(e => e.Id)
.HasDatabaseGeneratedOption(DatabaseGeneratedOption.None);
}
}