カスタム主キーの生成: Entity Framework ガイド
Entity Framework は、デフォルトでデータベース テーブルの行の一意の識別子を自動的に生成します。ただし、場合によっては、主キーに明示的な値を指定する必要がある場合があります。
主キーの自動生成を無効にするには、次のコードを使用できます:
<code class="language-csharp">modelBuilder.Entity<Event>().Property(e => e.EventID).HasDatabaseGeneratedOption(DatabaseGeneratedOption.None);</code>
ただし、IDENTITY_INSERT が OFF に設定されている場合、ID 列に明示的な値を挿入できないことを示すエラーが発生する場合があります。この問題を解決するには、列に [DatabaseGenerated(DatabaseGeneratedOption.None)]
のマークが付いていることを確認してください。
以下は属性の使用例です:
<code class="language-csharp">[Key] [DatabaseGenerated(DatabaseGeneratedOption.None)] public int EventID { get; set; }</code>
このメソッドは EF Core でも機能し、エンティティのキー値を手動で指定できます。
以上がEntity Framework でキーの生成を手動で処理する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。