在 WebForms 中使用 system.web.routing 时的状态服务



我在WebForms应用程序中使用System.Web.Routing 程序集。运行在win2008/IIS7上部署的应用程序时,我收到以下消息。

仅当 enableSessionState 设置为 true 时,才能在配置文件或 Page 指令中使用会话状态。另请确保 System.Web.SessionStateModule 或自定义会话状态模块包含在应用程序配置的 \\ 部分中。

这只是使用我配置的路由时的问题。直接导航到 aspx 页时,这不是问题。

EnableSessionState 已在 web.config 和 Page 指令中打开。我已经将会话条目添加到web.config的httpmodule中。

在我的工作站上使用Visual Studio进行开发时,这不是问题。仅当尝试在 Win 2008 上的 IIS7 下运行应用程序时,才有问题。

我遇到了同样的问题,我想我知道问题是什么。

我正在尝试在路由系统下实现一个 FileNotFound 页面(我还没有弄清楚的是如何在标题中给出 FileNotFound 页面并给出 404 响应)

我发现,由于某种原因,在 BuildManager 中注册的页面似乎在没有会话上下文的情况下实例化(该页面实际上没有被请求,只是实例化!

至少它看起来是这样做的。


我现在不太确定我之前的断言。显然,当图像在物理上不存在时,对图像的请求也会通过路由系统。这会导致在图像路径匹配时调用IRouteHandler。我很确定在请求图像时会话对象不存在,因此当路由到的页面尝试访问它时,这可能会导致问题。

我认为您所描述的内容与我遇到的问题相似。

可能是您的 IIS7 以不同的模式运行,并且更像 II6 而不是 7:

几个问题:1. 您的映射是否正确重定向了您的请求?2. 当您的请求被映射时,它会去哪里?3.如果您通过此页面跟踪哪行代码生成错误(它甚至击中了您的代码)?

相关内容

  • 没有找到相关文章

最新更新