Luk*_*uke 4 session-state iis-express
我有一个在 IIS Express 服务器下的 Visual Studio 2013 中运行的应用程序。问题是会话数据没有保存在页面之间,我发现以前页面不是空的空对象。如果我编译应用程序并将其部署在带有 IIS 的 Web 服务器上,它可以正常工作,所以它必须是带有 IIS Express 的东西。我搜索了文档文件夹中的配置文件,但真的不知道它是什么。
谢谢,卢克
编辑 25/11:我正在使用 VS 2013 和 VS 2010 在同一台机器上调试代码,我发现代码的行为方式不同。在执行完后面的代码并构建页面后,在 VS 2010 中执行结束。在构建页面后的 VS 2013 中,我再次调用 context_BeginRequest(object sender, EventArgs e) 方法,该方法将应用程序重定向到起始页面,其中指令 Session.Clear() 清除会话。现在的问题是:为什么要额外调用 context_BeginRequest 方法?为什么它重定向到起始页面而不是它当前所在的页面?谢谢,卢克。
小智 6
我遇到了类似的问题。我的代码在生产服务器上运行良好,但是当我在测试机器上调试它时,保存和重定向之间的会话将为空。
当我<sessionState cookieless="true"将会话状态设置为 cookieless 时,会话变量将被保留。但这是不可取的,因为它将会话名称添加到 url。
经过进一步审查,我注意到我的 system.web 中有一行<httpCookies requireSSL="true" />当我将其注释掉时,一切都像往常一样。
问题是我的生产 IIS 服务器使用 https:// 托管代码,而我的测试 IIS Express 服务器仅使用 http。所以我不安全的 cookie 被丢弃了。
| 归档时间: |
|
| 查看次数: |
7243 次 |
| 最近记录: |