Мазмуну:

Entity Framework параллелдүүлүктү кантип иштетет?
Entity Framework параллелдүүлүктү кантип иштетет?

Video: Entity Framework параллелдүүлүктү кантип иштетет?

Video: Entity Framework параллелдүүлүктү кантип иштетет?
Video: Всё об Entity Framework Core 2024, Апрель
Anonim

Entity Framework оптимисттик маанайды колдойт параллелдүүлүк демейки боюнча. EF сактайт субъект маалыматтар базасына, ошол эле маалыматтар бери өзгөргөн жок деп ойлосок субъект жүктөлгөн. Эгер ал маалыматтар өзгөрдү деп тапса, анда өзгөчө болуп саналат ыргытылып, кайра сактап калуудан мурун чыр-чатакты чечишиңиз керек.

Мындан тышкары, Entity Framework параллелдүүлүктү кантип башкарат?

Кошумча конфликттерди чечүүнүн жалпы ыкмасы:

  1. SaveChanges учурунда DbUpdateConcurrencyException кармаңыз.
  2. DbUpdateConcurrencyException колдонуңуз.
  3. Маалыматтар базасындагы учурдагы маанилерди чагылдыруу үчүн параллелдүүлүк белгисинин баштапкы маанилерин жаңыртыңыз.
  4. Эч кандай чыр-чатак чыкмайынча процессти кайталап көрүңүз.

Андан кийин суроо туулат, Web API параллелдүүлүктү кантип башкарат? Кантип параллелдүүлүктү башкаруу ASP. NET Core ичинде Web API . MVC үчүн кызматтарды жана орто программаны кошуу үчүн бош долбоорду түзүп, Startup классын жаңыртыңыз. Көрсөтүү үчүн GET жана PUT менен контроллерди кошуңуз параллелдүүлүк . GET өтүнүчүн жөнөтүңүз жана ETag башын байкаңыз (Почтачыны колдонуу менен).

Андан кийин суроо туулат, Entity Framework конкуренциясында кардар утат жана дүкөн утту режими деген эмне?

In дүкөн утат / маалымат базасы утат серверден маалыматтар сиздин компьютериңизге жүктөлөт субъект объектилер. Кардар утат карама-каршы турат сакталган утуштар , алынган маалыматтар субъект объект маалымат базасына сакталат. Биз "Жаңылоо" ыкмасын колдонушубуз керек объект алкагы контекст жана биз ошол эле үчүн "RefreshMode" энумун колдонушубуз керек.

Entity Framework пессимисттик кулпулоону колдойбу?

Пессимисттик параллелдүүлүктү камтыйт кулпулоо башка колдонуучуларга жетүү/өзгөртүү мүмкүнчүлүгүнө жол бербөө үчүн маалымат базасы жазуулары кулпу болуп саналат эки колдонуучу тармак бөлүшүүсүндө бир файлды ачууга аракет кылгандагыдай, бошотулган. Entity Framework Негизги жок камсыз кылат колдоо үчүн пессимисттик параллелдүүлүктү көзөмөлдөө.

Сунушталууда: