Я использую Azure провайдер состояния сеанса связи (DistributedCacheSessionStateStoreProvider
), и он отлично работает. Но теперь у меня есть пользовательский HttpModule
, который сочетает в себе скрипты. Я подключаю Response.Filter
в PostAcquireRequestState
. Я затем отправить Session
ссылку на мой пользовательский фильтр с помощью конструктора:Сеанс доступа в HttpModule в ответ или после ответа. Фильтр?
application.Response.Filter = new CombinationFilter(application.Response.Filter, application, application.Session)
изменить Session
в моем фильтре, и он отлично работает на локальном хосте (стандарт поставщика сеанса). Но опубликовано на Azure, когда я изменяю Session
значения, но позже они исчезают (они не сохраняются). Только те, которые добавлены в фильтр, исчезают, те, что были там раньше, все еще там. Я подозреваю, что последняя синхронизация находится в пределах ReleaseRequestState
(на основе имени). Это, очевидно, до обработки моего Response.Filter
.
Как я могу получить
Session
позже в цепочке и сохранить его?Или можно каким-либо образом использовать фильтр до
ReleaseRequestState
?