Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Memasukkan Kunci Secara Manual ke dalam Jadual Rangka Kerja Entiti?

Bagaimana untuk Memasukkan Kunci Secara Manual ke dalam Jadual Rangka Kerja Entiti?

Susan Sarandon
Susan Sarandonasal
2025-01-15 19:01:44496semak imbas

How to Manually Enter Keys into Entity Framework Tables?

Menentukan Kunci Utama Secara Manual dengan Rangka Kerja Entiti

Rangka Kerja Entiti biasanya menjana kunci utama secara automatik, tetapi situasi mungkin timbul di mana anda perlu menetapkan nilai kunci secara manual. Ini selalunya membawa kepada konflik jika kenaikan automatik didayakan. Begini cara mengurusnya:

Untuk menghalang Rangka Kerja Entiti daripada menjana kunci utama secara automatik, anda boleh menggunakan sama ada Fluent API atau anotasi data:

Kaedah 1: API Fasih

Pendekatan ini mengubah suai pembina model:

<code class="language-csharp">modelBuilder.Entity<Event>().Property(e => e.EventID).HasDatabaseGeneratedOption(DatabaseGeneratedOption.None);</code>

Jika anda menghadapi ralat "Tidak boleh memasukkan nilai eksplisit untuk lajur identiti dalam jadual 'Acara' apabila IDENTITY_INSERT ditetapkan kepada MATI", anda perlu melaraskan tetapan pangkalan data:

  1. Buka SQL Server Management Studio (SSMS) dan sambung ke pangkalan data anda.
  2. Cari jadual 'Acara'.
  3. Klik kanan jadual, pilih "Properties", pergi ke tab "Options".
  4. Dalam bahagian "Spesifikasi Identiti", tetapkan "Adakah Identiti" kepada "Tidak." Klik "OK."

Kaedah 2: Anotasi Data

Sebagai alternatif, anda boleh menggunakan atribut terus dalam kelas entiti anda:

<code class="language-csharp">[Key]
[DatabaseGenerated(DatabaseGeneratedOption.None)]
public int EventID { get; set; }</code>

Kedua-dua kaedah mencapai hasil yang sama: melumpuhkan kenaikan automatik untuk lajur EventID, membolehkan anda menentukan nilai utama secara langsung apabila memasukkan data ke dalam jadual Events anda. Ingat untuk memilih satu kaedah dan gunakannya secara konsisten. Menggunakan kedua-duanya secara serentak berkemungkinan akan menyebabkan konflik.

Atas ialah kandungan terperinci Bagaimana untuk Memasukkan Kunci Secara Manual ke dalam Jadual Rangka Kerja Entiti?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn