У меня есть обработка ошибок в событии Application_Error файла globals.asax. Внутри этого события я использую метод Response.Redirect(~errorview.aspx)
для перенаправления на сайт, который может обрабатывать ошибки удобным для пользователя способом.
Все работает нормально, если исключение не возникает в событии Application_Start. Когда там происходит ошибка, мое приложение попадает в бесконечный цикл с неоднократным попаданием метода Application_Error. Более того, страница, на которую я перенаправляю, никогда не попадет под удар. Изменение метода Response.Redirect(~errorview.aspx)
на Response.Redirect(~errorview.aspx, false)
ничего не меняет.
Хорошей новостью является то, что когда Response.Redirect(~errorview.aspx)
был заменен на Server.Transfer(~errorview.aspx)
, страница errorview.aspx успешно получает доступ.
Побочным эффектом теперь не является загрузка CSS, и страница errorview.aspx выглядит некрасиво. Более того, CSS не загружается только , когда возникает исключение в Application_Start событии. Исключения, выброшенные из любого другого места, не создают беспорядка в CSS.
Как я могу правильно решить эту проблему и почему CSS отсутствует в одной конкретной ситуации? Как правильно обрабатывать ошибки в моем случае?
UPDATE
Для загрузки CSS я использую это:
<link href="~/Css/Layout/style.css" type="text/css" rel="stylesheet"
runat="server" ID="_uid" />
страница ошибки, с которой я перевожу: http://localhost/APP/Pages/Module/Pages/ErrorView.aspx
путь к папке css: http://localhost/APP/Pages/Module/CSS/Layout/style.css
Спасибо за любые подсказки заранее. С уважением.