我们有一个使用表单身份验证的ASP.NET Web窗体应用程序。
在Visual Studio中,与类库项目不同,如果您对主网站项目(即ASPX页面)进行更改,则不必重新编译整个解决方案以在浏览器中测试结果。您只需保存更改,然后刷新浏览器即可。
在我们的情况下,在进行一次更改后,我们保存并刷新浏览器,一切正常。但是,在第6或第7或第8次更改后,我们会退出。浏览器尝试刷新时间很长(5分钟),只是为了返回登录界面。
我尝试使用谷歌搜索,但没有找到任何相关信息。有谁知道是什么导致这种情况或指向正确的方向?
提前致谢。
答案 0 :(得分:1)
您的会话更有可能出现在" InProc"模式,这意味着您的会话变量本地存储在.NET工作进程中。
参考:https://blogs.msdn.microsoft.com/webtopics/2009/07/21/in-proc-session-state-management/
考虑到这一点,每次更新标记文件(ASPX).NET都允许您查看更改而无需重新编译整个解决方案,它只预编译aspx,这可能是导致会话变量消失的原因。
您可以在此处找到更广泛的答案以及如何避免此行为:https://stackoverflow.com/a/13230002/3778318