2010-05-28 136 views
1

我的应用程序中有几个页面。我使用了一个名为“Session [”Variable“]”的会话变量,它在page1和page2中设置。这意味着范围应该在页面1和页面2中。如果你走出这些页面将清除上面的会话变量。是否有任何解决方案来清除应用程序级别中的特定会话变量。即我不想写每个和每页的代码...在应用程序中销毁会话

+0

您是否使用了从其中继承的主页或某种基本页? – Andre 2010-05-28 09:21:26

+0

是的......我使用了母版页 – 2010-05-28 09:23:26

回答

0

如果您使用MasterPages或从基类派生您的网页,你可以用一个开关情况,并确定当前页面是否是第一页,第二页或别的东西。如果是“其他”,请从会话中删除密钥。

IE:在母版

1

会话密钥一旦创建是asp.net应用程序的所有页面中的accessbile,而不仅仅是在其添加或修改的地方。

如果您需要从会话中显式删除变量/密钥,请使用Session.Remove()。

Session.Remove("Variable"); 

此外,

Session.RemoveAll(); //Removes all keys from current session. 

Session.Abandon(); //Abandon the current session. 
0

一旦你在asp.net应用程序设置会话在Page_Load开关的情况下,本次会议的范围提供无处不在。所以,就你而言,你可以写一个通用函数来检查page1和page2。