Asp.net 升级到.net 4.5后访问会话
将web项目升级到.net 4.5后,我在访问会话时遇到问题 首先,我有一个功能齐全的.NET3.5WebForms项目,我在我的开发机器上升级到了.NET4.5。这项工作在当地进行得很好 其次,我修改了dev iis服务器上的应用程序池,以使用.net 4.0为运行新代码部署做准备 最后,我将升级后的项目部署到devweb服务器 问题是,当我被告知需要启用会话状态来访问会话变量时,我马上就遇到了一个错误 背景: 我有一个母版页,它检查会话变量的存在。我已经将这段代码放在母版页的page_init事件中,以确保它在内容页等的page_加载之前运行 此技术在.NET3.5下运行良好,在本地开发人员机器上在4.5下运行良好。但在iis服务器上不起作用 我一直在关注各种线程,它们告诉我在config all中设置enablesessionstate=true,但都没有用 可能是因为在iis上运行.net 4.5的.net站点在会话方面存在问题,或者我遗漏了更明显的内容Asp.net 升级到.net 4.5后访问会话,asp.net,session,master-pages,Asp.net,Session,Master Pages,将web项目升级到.net 4.5后,我在访问会话时遇到问题 首先,我有一个功能齐全的.NET3.5WebForms项目,我在我的开发机器上升级到了.NET4.5。这项工作在当地进行得很好 其次,我修改了dev iis服务器上的应用程序池,以使用.net 4.0为运行新代码部署做准备 最后,我将升级后的项目部署到devweb服务器 问题是,当我被告知需要启用会话状态来访问会话变量时,我马上就遇到了一个错误 背景: 我有一个母版页,它检查会话变量的存在。我已经将这段代码放在母版页的page_ini
请帮忙,因为这很令人沮丧,我不知道是什么原因造成的 我通过创建一个全新的.NET4.5项目并从我先前存在的站点导入资产/页面,解决了这个问题 值得注意的是,这样做在部署到web服务器后不会导致会话出现问题,这的确很奇怪。我只能假设我最初使用的项目升级过程留下了一些奇怪的配置,这会扰乱服务器
无论如何,我现在已经在这方面投入了足够的时间,感谢您花时间发表评论。您是在proc会话中使用还是在状态服务器会话中使用?可能必须在web.config中明确说明选择。我很确定它会默认为在进程中,但可能是错误的。说你可能会得到更基本的错误扫描你告诉我们你在system.web->sessionState中配置了什么?有一个名为“mode”的属性,您可以在其中设置sessionstate模式(它是一个枚举)。确保它没有设置为“关闭”。我今天不在工作(明天回来),但会话在iis上已启用,并设置为(inproc)一切正常。事实上,作为诊断,我使用一个简单的会话变量配置了一个小型独立项目,以证明会话已启用。这是有效的,所以我相信问题一定是:在.NET4.5的母版页中使用会话??(一个我不知道的错误/差异)在页面生命周期中,我在母版页(当前为page_init)上使用的会话在哪里?还有其他的吗???会话在一个简单的站点上工作,但在我部署的站点上不工作。我不知道是什么导致了这种情况?我通过创建一个全新的.NET4.5项目并从我先前存在的站点导入资产/页面,解决了这个问题。值得注意的是,这样做在部署到web服务器后不会导致会话出现问题,这的确很奇怪。我只能假设我最初使用的项目升级过程留下了一些奇怪的配置,这会扰乱服务器???无论如何,我现在已经在这方面投入了足够的时间,谢谢你花时间发表评论。