Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah Saya Boleh Dapatkan ID Dijana Auto bagi Entiti yang Baru Dimasukkan Menggunakan Rangka Kerja Entiti?

Bagaimanakah Saya Boleh Dapatkan ID Dijana Auto bagi Entiti yang Baru Dimasukkan Menggunakan Rangka Kerja Entiti?

DDD
DDDasal
2025-01-21 11:02:09385semak imbas

How Can I Retrieve the Auto-Generated ID of a Newly Inserted Entity Using Entity Framework?

Mengakses ID Dijana Auto dalam Rangka Kerja Entiti

Rangka Kerja Entiti memudahkan interaksi pangkalan data, tetapi mendapatkan ID yang dijana secara automatik bagi rekod yang baru dimasukkan kadangkala boleh menjadi rumit. Panduan ini menjelaskan cara mendapatkan ID ini dengan cekap.

Cabarannya

Ramai pembangun menghadapi kesukaran untuk mendapatkan kunci utama yang diberikan pangkalan data selepas menambah entiti baharu menggunakan Rangka Kerja Entiti. Hanya mengakses sifat ID entiti mungkin tidak selalu menghasilkan nilai yang dijana pangkalan data yang betul.

Penyelesaian

Rangka Kerja Entiti menawarkan kaedah mudah untuk mendapatkan ID yang dijana secara automatik:

<code class="language-csharp">using (var context = new MyContext())
{
  context.MyEntities.Add(myNewObject);
  context.SaveChanges();

  int id = myNewObject.Id; // The auto-generated ID is now available
}</code>

Rangka Kerja Entiti secara automatik menggabungkan penyata SELECT SCOPE_IDENTITY() selepas setiap operasi INSERT apabila berurusan dengan kunci utama penambahan automatik. Ini memastikan ID yang baru dijana segera ditunjukkan dalam entiti.

Pelaksanaan Langkah demi Langkah

  1. Tambah Entiti: Gunakan context.MyEntities.Add(myNewObject) untuk menambah entiti baharu pada konteks Rangka Kerja Entiti.
  2. Simpan Perubahan: Panggil context.SaveChanges() untuk meneruskan perubahan pada pangkalan data. Ini mencetuskan pertanyaan INSERT dan SCOPE_IDENTITY() seterusnya.
  3. Dapatkan ID: Selepas SaveChanges(), sifat myNewObject.Id akan mengandungi ID yang dijana pangkalan data.

Kaedah ini menjamin perolehan tepat ID yang dijana secara automatik, memenuhi keperluan asal.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Dapatkan ID Dijana Auto bagi Entiti yang Baru Dimasukkan Menggunakan 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