Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk Menetapkan Kunci Utama secara Manual dalam Rangka Kerja Entiti dan Menyelesaikan Masalah Ralat Lajur Identiti?
Rangka Kerja Entiti: Menguasai Tugasan Kunci Utama Manual dan Menyelesaikan Masalah Ralat Lajur Identiti
Panduan ini menangani kerumitan mentakrifkan kunci utama secara manual dalam sistem pengurusan pangkalan data Rangka Kerja Entiti. Kami akan meliputi pelumpuhan penjanaan kunci automatik EF dan menyelesaikan ralat biasa yang berkaitan dengan penetapan nilai kunci eksplisit.
Rangka Kerja Entiti (EF) biasanya mengendalikan penjanaan kunci utama secara automatik. Untuk mengatasi tingkah laku ini dan menentukan kunci anda sendiri, gunakan sifat DatabaseGeneratedOption
, ditetapkan kepada None
. Ini boleh dicapai menggunakan sama ada atribut atau API fasih.
Kaedah 1: Konfigurasi Berasaskan Atribut
<code class="language-csharp">[Key] [DatabaseGenerated(DatabaseGeneratedOption.None)] public int EventID { get; set; }</code>
Kaedah 2: Konfigurasi API Fasih
<code class="language-csharp">modelBuilder.Entity<Event>().Property(e => e.EventID).HasDatabaseGeneratedOption(DatabaseGeneratedOption.None);</code>
Melumpuhkan penjanaan kunci automatik selalunya membawa kepada ralat yang melibatkan lajur identiti. Ini biasanya timbul kerana IDENTITY_INSERT
dilumpuhkan untuk jadual yang berkaitan. Untuk menyelesaikan masalah ini, dayakan sementara IDENTITY_INSERT
untuk membenarkan pemasukan nilai eksplisit ke dalam lajur identiti.
Nota Penting: Mendayakan IDENTITY_INSERT
membawa potensi risiko integriti data dan harus digunakan dengan bijak dan hanya apabila benar-benar perlu. Pertimbangkan implikasi dengan teliti sebelum melaksanakan penyelesaian ini.
Atas ialah kandungan terperinci Bagaimana untuk Menetapkan Kunci Utama secara Manual dalam Rangka Kerja Entiti dan Menyelesaikan Masalah Ralat Lajur Identiti?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!