ASP.NET – 消失的会话变量

前端之家收集整理的这篇文章主要介绍了ASP.NET – 消失的会话变量前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在为客户端工作一个当前的Web应用程序,我遇到一些问题,会话变量消失在我身上.我会尝试尽可能地对场景进行良好的描述.除了我创建的页面之外的任何页面都不会发生这种情况,以允许用户修改存储在资源文件中的字符串.

它出现了什么时候:
用户导航到该页面,从列表中选择资源文件,然后单击第一次编辑.该页面文件加载到gridview中,并允许他们编辑它.此时,会话变量正在保存,并在所有回发时正确重新加载.现在,他们单击底部的保存按钮将资源文件写入文件系统(App_LocalResources).他们从列表中选择一个新文件,尝试加载它,这次会话变量被清除,并将它们重定向登录页面,因为它不知道有用户信息.

附加细节:

只有当他们单击一个保存按钮时才会发生这种情况,而保存按钮又调用我的过程来写入资源文件.

除了写入位于App_LocalResources中的资源文件之外,我在保存功能方面做的并不多,并且出于某种原因这会清除我的会话变量.

有问题的会话变量是用户信息,我试图将其作为page_load方法中的第一件事.

此会话信息也通过page_load方法在每次回发时执行.

谢谢大家,我希望我能够很好地描述这一点.

解决方法

当您更改与应用程序关联的目录中的文件时,IIS将重置应用程序.重置应用程序将使您丢失内存会话.

您可以将资源文件放在目录之外.或者使用状态服务器进行会话.

猜你在找的asp.Net相关文章