【发布时间】:2011-04-06 22:31:51
【问题描述】:
在我的 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 为在配置文件或 Page 指令中设置为 true。" 因为我使用的是 server.transfer(我相信这是一个已知问题?)。
如果我使用 Response.Redirect,则没有问题。但是,这意味着错误页面的标题是 200,而不是 404。
最好的解决方法是什么?
【问题讨论】:
标签: asp.net http-status-code-404 global-asax