是否可以在一个页面上清除会话值并在asp.net c#中的另一个页面上恢复该会话?怎么样?我正在 page1.aspx 上清算会话,然后重定向到 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;
,这就是为什么在第二页上,我无法访问它。
答案 0 :(得分:0)
<强>更新强>
根据操作要求,Session [searchtext]返回第一页时不应该相同。因此,我正在编写以下解决方案来解决问题。
第一页:
Session["Searchtext"] = "something";
第二页:
Session["Searchedtext"] = Session["Searchtext"];
Session["Searchtext"] = "";
旧答案:
您的部分很简单,在访问之前,请检查它是否为空。
if(Session["searchText"]!=null)
{
//do your stuffs
}