У меня есть контроллер, у которого есть логика базы данных, возникающая в действии контроллера.Кроме того, я знаю, что это, вероятно, не идеально, но у меня есть некоторая логика, возникающая в моих взглядах.Это делает некоторые запросы SQL и, возможно, эти запросы могут обновлять записи.У меня есть транзакция, которую я открываю в начале действия моего контроллера.В попытке решить эту проблему я удерживал ее до вызова View () своего действия, надеясь, что логика представления будет выполнена до того, как мне придется зафиксировать транзакцию.Однако, похоже, это не работает, так как кажется, что он обрабатывает логику представления только после полного завершения действия контроллера.
ViewBag.Message = message;
ViewBag.Test = test;
var result = View();
LegacyDataManager.Commit();
Data.Commit();
return result;
}
finally
{
LegacyDataManager.Stop();
Data.CloseInstance();
}
Альтернативное решение заключается в том, что я не выполняю закрытие своих транзакций до конца логики представления, но это кажется даже более неправильным, чем то, что я сейчас пытаюсь.
Моя конечная цель заключается в том, чтобы вся необходимая логика возникала до того, как я закрыл транзакцию.
Спасибо.