2008-10-02 22 views
0

我使用的WebForms的应用System.Web.Routing装配system.web.routing时。运行部署在win2008/IIS7上的应用程序时,我收到以下消息。状态服务使用的WebForms

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

这使用我已经配置路由时,仅仅是一个问题。直接导航到aspx页面时,这不是问题。

的EnableSessionState已在web.config和Page指令都被打开。我已将Session条目添加到web.config的httpmodule中。

这用我的工作站上的Visual Studio开发的时候是不是一个问题。试图在Win 2008

+0

看看这里:http://stackoverflow.com/questions/400236/asp-net-routing-do-custom-routes-completely-skip-everything-in-the-global-asax#400289 – grenade 2009-06-08 09:39:56

回答

1

我有同样的问题,我想我知道问题是什么IIS7运行下的应用程序时,它仅仅是一个问题。

我试图实现路由系统下FileNotFound页面(东西我还没有搞清楚的是如何既给一个FileNotFound页面,并给予在头一个404响应)

我”什么我发现,出于某种原因,使用BuildManager注册的页面似乎没有会话上下文(实际上没有请求页面,只是实例!)。

至少这就是它似乎做。


我现在不太确定我以前的说法。显然,图像请求在物理上不存在时也会通过路由系统。这会导致在图像路径匹配时调用IRouteHandler。我非常肯定会在请求图像时不存在会话对象,以便在路由到的页面尝试访问它时可能会导致问题。

0

我认为你所描述的与我的question类似。

这可能是因为你的IIS7位于不同模式NAD更像II6超过7上运行:

几个问题:1。 是您的正确映射重定向你的要求? 2.当你的请求被映射到什么地方? 3.如果您通过此页面追踪哪行代码会产生错误(它是否会触发您的代码)?