Penjanaan kunci utama tersuai: Panduan Rangka Kerja Entiti
Rangka Kerja Entiti menjana pengecam unik secara automatik untuk baris jadual pangkalan data secara lalai. Tetapi dalam beberapa kes, anda mungkin perlu menentukan nilai eksplisit untuk kunci utama.
Untuk melumpuhkan penjanaan kunci utama automatik anda boleh menggunakan kod berikut:
<code class="language-csharp">modelBuilder.Entity<Event>().Property(e => e.EventID).HasDatabaseGeneratedOption(DatabaseGeneratedOption.None);</code>
Walau bagaimanapun, apabila IDENTITY_INSERT ditetapkan kepada MATI, anda mungkin menghadapi ralat yang menyatakan bahawa nilai eksplisit tidak boleh disisipkan untuk lajur identiti. Untuk menyelesaikan isu ini, pastikan lajur ditandakan [DatabaseGenerated(DatabaseGeneratedOption.None)]
.
Berikut ialah contoh penggunaan atribut:
<code class="language-csharp">[Key] [DatabaseGenerated(DatabaseGeneratedOption.None)] public int EventID { get; set; }</code>
Kaedah ini juga berfungsi dalam Teras EF, membolehkan anda menentukan nilai kunci secara manual untuk entiti.
Atas ialah kandungan terperinci Bagaimana Mengendalikan Penjanaan Kunci secara Manual dalam Rangka Kerja Entiti?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!