В моем global.asax я проверяю 404 и перехожу на страницу с ошибкой 404, как показано ниже:
If HTTPExceptionInstance.GetHttpCode = 404 Then
Server.ClearError()
Response.TrySkipIisCustomErrors = True
Response.Status = "404 Not Found"
Server.Transfer("~/Invalid-Page.aspx")
End If
Проблема в том, что мой Invalid-page.aspx использует некоторый код сеанса (Session ("somevariable")), который выдает исключение "Состояние сеанса может использоваться, только если установлен параметр enableSessionState в значение true, либо в файле конфигурации, либо в директиве Page. ", потому что я использую сервер.
Если я использую Response.Redirect, возникает проблема no . Однако это будет означать, что заголовок страницы с ошибкой равен 200, а не 404.
Каков наилучший обходной путь для этого?