В моем приложении ASP.NET MVC 5 я выполняю запрос GET по методу внутри контроллера, которому необходимо прочитать значение, хранящееся в сеансе. Чтобы избежать проблемы блокировки состояния сеанса, я установил SessionStateBehavior в ReadOnly на уровне класса.
 [SessionState(System.Web.SessionState.SessionStateBehavior.ReadOnly)]
    public class TestController: Controller
    {
         var test = Session["KEY"];
...
Однако очень редко мне приходится перезаписывать переменную Session в нечто другое внутри этого же метода. ASP.NET MVC не позволяет мне делать это с SessionStateBehavior, установленным на ReadOnly. Я не могу установить его на Required, потому что тогда я снова столкнулся с проблемой блокировки состояния сеанса, предотвращая одновременные запросы AJAX.
Какое хорошее решение для этого?
Изменить: мы используем SQL-сервер для управления состоянием сеанса.