Введение Entity Framework Core


EntityFrameworkCore da parallelizmni tashkillashtirish. ConcurrencyCheck atributI


Download 0.7 Mb.
bet5/7
Sana16.06.2023
Hajmi0.7 Mb.
#1514490
1   2   3   4   5   6   7
Bog'liq
11-Ma`ruza

2. EntityFrameworkCore da parallelizmni tashkillashtirish. ConcurrencyCheck atributI

ConcurrencyCheck atributi bir vaqtning o'zida bir nechta foydalanuvchi jadvaldagi bir xil yozuv bilan ishlashi mumkin bo'lgan holda, bir vaqtning o'zida ishlash muammosini hal qilishga imkon beradi. Masalan:

2. EntityFrameworkCore da parallelizmni tashkillashtirish. ConcurrencyCheck atributI

Oddiy rejimda, Entity Framework Core yangilashda Idga qaraydi va agar jadvaldagi yozuvning identifikatori o'tgan Foydalanuvchi modelidagi Idga mos kelsa, jadvaldagi qator yangilanadi. ConcurrencyCheck atributidan foydalanganda EF nafaqat Idga, balki Name xususiyatining asl qiymatiga ham qaraydi. Va agar u jadvaldagiga mos kelsa, yozuv yangilanadi. Agar u mos kelmasa (ya'ni, kimdir allaqachon yangilashga muvaffaq bo'lsa), EF DbUpdateConcurrencyException ni chiqaradi:

2. EntityFrameworkCore da parallelizmni tashkillashtirish. Timestamp atributI

2. EntityFrameworkCore da parallelizmni tashkillashtirish. Timestamp atributI

Timestamp atributi ma'lumotlar bazasiga yangilash va o'chirish buyruqlari yuborilganda, Timestamp xususiyatining qiymati Entity Framework tomonidan yaratilgan SQL WHERE bandiga kiritilishini bildiradi.

Ya'ni, ushbu xususiyatning qiymati ob'ekt qo'shilganda, shuningdek, foydalanuvchi uni har safar yangilaganda hosil bo'ladi. Xususiyat turi bayt massividir.Va agar ikkita foydalanuvchi bir vaqtning o'zida bir xil qatorni tahrirlashni boshlasa, birinchi foydalanuvchi tomonidan modelni saqlagandan so'ng, ikkinchi foydalanuvchi DbUpdateConcurrencyException oladi, unga mos ravishda ishlov berilishi kerak.

Shuni ta'kidlash kerakki, ushbu funktsiyani amalga oshirish ma'lumotlar bazasi provayderiga bog'liq.

Shunday qilib, SQLite uchun bu hech qanday ta'sir ko'rsatmaydi, shuning uchun yuqoridagi misolda ulanish MS SQL Serverga o'tadi

3. Ro'yxatga olish (Loglash) provayderlari

Loglash provayderlari aslida loglash mantig`i uchun mas'ul bo'lgan ob'ektlarni ifodalaydi. Va bu holda, biz o'rnatilgan provayderlardan foydalanishimiz yoki o'zimizni yaratishimiz mumkin.


Download 0.7 Mb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling