Mündəricat:

Entity Framework pessimist kilidləməni dəstəkləyirmi?
Entity Framework pessimist kilidləməni dəstəkləyirmi?

Video: Entity Framework pessimist kilidləməni dəstəkləyirmi?

Video: Entity Framework pessimist kilidləməni dəstəkləyirmi?
Video: Concurrency in ASP.NET Core | Optimistic | Pessimistic | C# 2024, Bilər
Anonim

Digər alternativ edir optimistliyə müraciət etmək kilidləmə . Sənəddə bildirilir ki, EF edir daxili yoxdur pessimist paralellik dəstək . Amma bu edir səni nəzərdə tutmur bacarmaq yoxdur pessimist kilidləmə EF ilə. Deməli SƏN BACARMAQ VAR PESSİMİST KİLİFLƏMƏ EF İLƏ!

Bundan əlavə, Entity Framework paralelliyi necə qoruyur?

Entity Framework optimistliyi dəstəkləyir paralellik default olaraq. EF saxlayır a qurum verilənlər bazasına, o zamandan bəri eyni məlumatların dəyişdirilmədiyini fərz edin qurum yüklənmişdi. Əgər məlumatların dəyişdiyini aşkar edərsə, o zaman istisna atılır və onu yenidən saxlamağa cəhd etməzdən əvvəl münaqişəni həll etməlisiniz.

Bundan əlavə, Entity Framework paralelində müştəri qalibiyyətləri və mağaza qalibiyyətləri rejimi nədir? In mağaza qalib gəlir / verilənlər bazası qalib gəlir serverdən məlumatlar sizin kompüterinizə yüklənir qurum obyektlər. Müştəri qalib gəlir qarşıdır saxlanılan qalibiyyətlər , məlumatlardan qurum obyekt verilənlər bazasında saxlanılır. "Yenilə" metodundan istifadə etməliyik qurum çərçivəsi kontekstdə və eyni üçün "RefreshMode" enumundan istifadə etməliyik.

Burada, Entity Framework paralel konfliktləri necə idarə edir?

Paralel konfliktləri idarə etmək üçün ümumi yanaşma:

  1. SaveChanges zamanı DbUpdateConcurrencyException-ı tutun.
  2. DbUpdateConcurrencyException istifadə edin.
  3. Verilənlər bazasında cari dəyərləri əks etdirmək üçün paralellik nişanının orijinal dəyərlərini yeniləyin.
  4. Heç bir ziddiyyət yaranana qədər prosesi yenidən cəhd edin.

Web API paralelliyi necə idarə edir?

Necə paralelliyi idarə etmək ASP. NET Core-da Veb API . MVC üçün xidmətlər və ara proqram əlavə etmək üçün boş layihə yaradın və Başlanğıc sinifini yeniləyin. Nümayiş etmək üçün GET və PUT ilə nəzarətçi əlavə edin paralellik . GET sorğusu göndərin və ETag başlığına baxın (Postmandan istifadə etməklə).

Tövsiyə: