Я не думаю, что ваш код может работать, потому что Session_End()
чаще всего вызывается, когда браузер НЕ делает никаких запросов после определенного периода Следовательно, Response
здесь не будет соответствовать конкретному запросу и, следовательно, не будет перенаправления.
Вместо этого попробуйте обработать Application_Start
и проверить свойство Session.IsNew
. Если это true
, тогда выполните перенаправление. (Попробуйте это сделать, вызвав FormsAuthentication.RedirectToLoginPage()
.)
При проверке IsNew
остерегайтесь описанной ситуации здесь . Я полагаю, что присвоение некоторой фиктивной переменной сеанса во время входа в систему решит эту проблему, хотя я сам не пробовал.