У меня похожая проблема: я хочу перехватить исключение «Максимальная длина запроса превышена» в обработчике Application_Error, а затем выполнить перенаправление.
(Разница в том, что я пишу службу REST с помощью ASP.Net Web API и вместо перенаправления на страницу ошибки я хотел перенаправить на контроллер ошибок, который затем возвращал бы соответствующий ответ).
Однако я обнаружил, что при запуске приложения через сервер разработки ASP.Net, Response.Redirect, похоже, не работал. Fiddler заявил бы, что «ReadResponse () не выполнен: сервер не возвратил ответ на этот запрос».
Мой клиент (Advanced REST Client для Chrome) просто показывает "0 NO RESPONSE".
Если бы я затем запустил приложение через локальную копию IIS на моей машине для разработки, тогда перенаправление работало бы правильно!
Я не уверен, что могу однозначно сказать, что Response.Redirect не работает на сервере разработки ASP.Net, но, безусловно, не работал в моей ситуации.
Итак, я рекомендую попробовать запустить ваше приложение через IIS вместо IIS Express или сервера разработки и посмотреть, получите ли вы другой результат.
См. Ссылку для указания веб-сервера для веб-проектов в Visual Studio:
http://msdn.microsoft.com/en-us/library/ms178108(v=vs.100).aspx