2013-12-06 3 views
0

Я не знаю, как (и это то, что я хочу знать).Странное поведение IReadonlySessionState

У меня есть HttpHandler, который реализует интерфейс маркера IReadonlySessionState. Моя идея состояла в том, чтобы не обновлять переменные Session в обработчике. Но мы случайно вызываем код, который сохраняет данные в сеансе, и как-то сеанс сохраняет данные.

Затем мы перевели наш проект на Azure и решили использовать Azure Cache. Из-за изменения SessionStateProvider, теперь сеанс не сохраняет данные (и это не должно потому, что обработчик только для чтения).

Я хочу знать, есть ли ошибка в провайдере сеанса по умолчанию, которая вызывает сохранение сеанса даже при манипулировании в Readonly Http Handler.

ответ

0

сообщает провайдеру состояния сеанса, что этот обработчик не нуждается в сохранении состояния сеанса.
Обработчик не обязан отказываться ни от чего.

У обработчика по умолчанию нет причин не сохранять состояние сеанса (поскольку он находится в процессе), поэтому он всегда сохраняет.

+0

thanx для такой быстрой реакции. Предположим ли вы, что служба SessionState по умолчанию всегда сохраняет сеанс независимо от того, в каком режиме вы хотите загрузить. и «Microsoft.Web.DistributedCache.DistributedCacheSessionStateStoreProvider», этот провайдер заботится о интерфейсах маркеров, реализованных обработчиком http. – ZafarYousafi

Смежные вопросы