我有一个包含大量公司名单的主页,我有一个搜索按钮,如果我想按州或城市找到公司,我可以过滤我的搜索。
我决定按城市过滤我的搜索,比如芝加哥,我搜索的结果是10家公司。
我点击该列表中的任何公司,我会查看公司详细信息,但我发现这不是我要找的那个,所以我想回到我的10个公司结果列表,但我会回到主要公司搜索界面,我不得不重新开始我的搜索。
如何在这种情况下使用会话变量或cookie?
有人可以帮我这个吗?
答案 0 :(得分:1)
另一个不涉及Session
或cookies
的有效选项是使用网址传递搜索参数。如果您的网站是公开的,这也可以帮助您进行搜索引擎优化。
如果您没有使用任何重写,您可以使用友好的网址+重写规则或仅使用查询字符串。
在公司详细信息页面上,您将存储引荐来源网址,如果用户想要返回,则可以访问该网页。
答案 1 :(得分:0)
我同意Claudio的观点,但如果您确实想要使用会话,我会做类似以下的事情
在页面加载中执行类似这样的操作
if(!Page.IsPostBack)
{
string filter = Session["SearchQuery"].ToString();
if(filter != null)
{
FilterResults(filter)
}
}
然后在你的过滤器事件中执行类似
的操作Session["Filter"] = txtCityName.txt;
FilterResults(txtCityName.txt);