Используем ASP.Net MVC + Autofac + EF6. DbContext обернут UnitOfWork. Мы создаем его для каждого http-запроса через Autofac. Мы также открываем транзакцию для всего http-запроса в конструкторе UnitOfWork.
Проблема заключается в том, что не все http-запросы должны быть включены в транзакцию. Некоторые из них даже не имеют запросов к БД.
Мы хотели бы отложить открытие транзакции до первого фактического запроса к БД. Есть идеи, как это можно сделать?
Мы можем переопределить SaveChages и открывать транзакцию перед сохранением, но выбранные запросы не будут выполняться в транзакции таким образом.
Еще одна проблема: мы используем глобальныйфильтры от EF Plus для мягких съемных объектов. Это работает хорошо, но инициализация фильтров для контекста довольно медленная. Мы бы хотели отложить его до первого фактического запроса к БД.