Isi kandungan:

Bagaimanakah Rangka Kerja Entiti mengendalikan konkurensi?
Bagaimanakah Rangka Kerja Entiti mengendalikan konkurensi?

Video: Bagaimanakah Rangka Kerja Entiti mengendalikan konkurensi?

Video: Bagaimanakah Rangka Kerja Entiti mengendalikan konkurensi?
Video: hadoop yarn architecture 2024, November
Anonim

Rangka Kerja Entiti menyokong optimistik keselarasan secara lalai. EF menjimatkan entiti data ke pangkalan data, dengan mengandaikan bahawa data yang sama tidak diubah sejak entiti telah dimuatkan. Jika ia mendapati bahawa data telah berubah, maka pengecualian ialah dilemparkan dan anda mesti menyelesaikan konflik sebelum cuba menyelamatkannya semula.

Selain itu, bagaimanakah Rangka Kerja Entiti mengurus konkurensi?

Pendekatan umum untuk menangani konflik konkurensi ialah:

  1. Tangkap DbUpdateConcurrencyException semasa SaveChanges.
  2. Gunakan DbUpdateConcurrencyException.
  3. Muat semula nilai asal token konkurensi untuk mencerminkan nilai semasa dalam pangkalan data.
  4. Cuba semula proses sehingga tiada konflik berlaku.

Seterusnya, persoalannya ialah, bagaimanakah API Web mengendalikan konkurensi? Bagaimana untuk mengendalikan konkurensi dalam ASP. NET Core API Web . Buat projek kosong dan kemas kini kelas Permulaan untuk menambah perkhidmatan dan perisian tengah untuk MVC. Tambah pengawal dengan GET dan PUT untuk menunjukkan keselarasan . Hantar permintaan GET dan perhatikan pengepala ETag (menggunakan Posmen).

Seterusnya, persoalannya ialah, apakah mod kemenangan pelanggan dan kedai menang dalam konkurensi Rangka Kerja Entiti?

Dalam kedai menang / pangkalan data menang data daripada pelayan dimuatkan ke dalam anda entiti objek. Pelanggan menang adalah bertentangan dengan kemenangan yang disimpan , data daripada entiti objek disimpan ke pangkalan data. Kita perlu menggunakan kaedah “Refresh” bagi rangka kerja entiti konteks dan kita perlu menggunakan enum "RefreshMode" untuk perkara yang sama.

Adakah Rangka Kerja Entiti menyokong penguncian pesimis?

Pesimis concurrency melibatkan mengunci rekod pangkalan data untuk menghalang pengguna lain dapat mengakses/menukarnya sehingga kunci adalah dikeluarkan, sama seperti apabila dua pengguna cuba membuka fail yang sama pada perkongsian rangkaian. Rangka Kerja Entiti Teras menyediakan no sokongan untuk pesimis kawalan serentak.

Disyorkan: