В моем 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 ». потому что я использую server.transfer (я считаю, что это известная проблема?).
Если я использую Response.Redirect, проблем нет. Однако это будет означать, что заголовок страницы с ошибкой - 200, а не 404.
Что было бы лучшим решением для этого?