Настройте веб-конфигурацию IIS для моего приложения webapi для использования изоляции Snapshop
Из-за производительности в нашей системе (взаимоблокировки, чтение базы данных заблокировано, когда выполняется запись в базу данных и т. Д.), Мы хотим попробовать изоляцию из snapshop. Я читал об уровне изоляции снимков, здесь. Мы используем Entity Framework
Я установил изоляцию Snapshop на БД и хочу настроить наши приложения веб-API для использования этой изоляции как для чтения, так и для записи. Как я могу это сделать? Я прочитал, что это можно сделать в web.config, но не могу найти, как..
1 ответ
Согласно документации Entity Framework, вам нужно использовать транзакцию, чтобы установить уровень изоляции:
using (var tx = myContext.Database.BeginTransaction(IsolationLevel.Snapshot)) {
// Perform operations on the context...
await myContext.SaveAsync();
tx.Commit();
}
См. Также этот ответ для получения подробной информации о значениях по умолчанию: по существу, EF использует все, что база данных имеет в качестве уровня изоляции транзакции по умолчанию через IsolationLevel.Unspecified
,