我单击Article.aspx中的一个按钮,完成处理后,我希望它返回到另一页上一页,SectionOver.aspx,我还希望它包含以前的搜索结果。
asp.net
<asp:Button ID="btnSaveArticle" runat="server" Text="<%$ Resources:General, Action_Save %>" Width="100px" OnCommand="btnSaveArticle_Command" OnClientClick="return ConfirmSave(); " />
C#:
protected void btnSaveArticle_Command(object sender, CommandEventArgs e){
saveArticleProcess(e.CommandArgument.ToString(), "Save");
btnCancel_Command(null, null);
}
protected void btnCancel_Command(object sender, CommandEventArgs e)
{
if (IsPostBack)
{
btnUnlock_Click(null, null);
Response.Redirect("SectionOverview.aspx");
ScriptManager.RegisterClientScriptBlock(this, typeof(Page), "_ReloadPage", "closeWindowevent()", true);
}
}
它可以返回上一页,但这是一个页面,它不包含以前的搜索结果。
答案 0 :(得分:0)
从搜索中获得结果后,我假设是大量数据。您可以将其放在缓存中并在另一端检索它。
类似的东西:
要插入:
HttpContext.Current.Cache.Insert("UNIQUE SEARCH KEY", dataTable, null, DateTime.Now.AddHours(1), System.Web.Caching.Cache.NoSlidingExpiration);
要检索
public DataTable GetDataTableFromCacheOrDatabase()
{
DataTable dataTable = HttpContext.Current.Cache["UNIQUE SEARCH KEY"] as DataTable;
if(dataTable == null)
{
dataTable = GetDataTableFromDatabase();
HttpContext.Current.Cache["UNIQUE SEARCH KEY"] = dataTable;
}
return dataTable;
}
如果您只有小数据,那么您也可以使用查询字符串。
string s = "~/SectionOverview.aspx?";
s += "Id=" + someId;
Response.Redirect(s);
检索
Request.QueryString["Id"];