如何在asp.net c#中结束和恢复会话
本文关键字:结束 恢复 会话 asp net | 更新日期: 2023-09-27 18:02:28
是否可以在asp.net c#中清除一个页面上的session值并在另一个页面上恢复该会话?如何?我正在清除page1上的会话。然后重定向到page2。aspx和该会话应该恢复。我已经试过了:
Session.Abandon()
但它不工作
代码在第一页。Session["searchText]
正在制造问题。
else if (RadTabStrip1.SelectedIndex == 1)
{
if (!Permissions.checkPermissions(Session["employeeloggedin"].ToString(), "ACCTMODF"))
{
ScriptManager.RegisterStartupScript(this, Page.GetType(), "OnLoad", "alert('You must have the Accounts: modify permission to batch invoice!')", true);
}
else
{
// added by shiv on 07/14/2015
Session["searchText"] = null;
fillBatchInvoiceGrid();
第二页代码
if (e.CommandName == "alpha" || e.CommandName == "NoFilter")
{
String value = null;
switch (e.CommandName)
{
case ("alpha"):
{
value = string.Format("{0}", e.CommandArgument);
break;
}
case ("NoFilter"):
{
value = "%";
Session["searchDuplicate"] = null;
Session["searchCusSalesRep"] = null;
break;
}
}
// Session["searchletter"] = value;
Session["searchType"] = "1";
Session["searchText"] = value;
Session["searchFilter"] = "1";
我在第一页制作Session[searchText] = null;
,这就是为什么在第二页,我不能访问它
更新:
根据op的要求,Session[searchtext]返回到第一页时不应该是相同的。因此,我写下面的解决方案来解决这个问题。
第一页:
Session["Searchtext"] = "something";
第二页:
Session["Searchedtext"] = Session["Searchtext"];
Session["Searchtext"] = "";
老答:
在你的部分很简单,在访问之前,检查是否为空。
if(Session["searchText"]!=null)
{
//do your stuffs
}