我正在制作一个类别目录,而当我按下“电视”链接时,我正试图这样做,它将把我给“电视”类别的会话带到“TV”的所有产品”
以下是示例:
我的ACCESS数据库中有一个包含“categoriesId”和电视ID的类别表:1
以下是HTML代码:
<a class="dropdown-toggle" data-toggle="dropdown" href="#">Categories <span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href=>Televisions</a></li>
<li><a href="#">Desktops</a></li>
<li><a href="#">refrigerators</a></li>
<li><a href="#">For Kitchen</a></li>
<li><a href="#">air conditioners</a></li>
<li><a href="#">Washing machines and dryers</a></li>
<li><a href="#">Laptops</a></li>
</ul>
</li>
我想要当我按下“电视”时,它会引导我进入产品。
这是我的C#代码:
Session["category"] = 1;
Response.Redirect("ShowProducts.aspx");
在“产品”页面中有以下代码:
int idCat = int.Parse(Session["Category"].ToString());
dt = ProductsService.GetProductsByCategory(idCat);
GridView1.DataSourceID = "";
GridView1.DataSource = dt;
GridView1.DataBind();
我不知道应该怎么做才能将下拉菜单的HTML代码与C#结合起来。
你能帮帮我吗?非常感谢。
答案 0 :(得分:1)
您的代码没有问题,会话未过期,因此您可以再次看到登录按钮,关闭浏览器并再次打开它,或重新启动iis / iis Express并重试
同样如果您执行了注销,请确保删除UserId会话
Session.Remove("UserID")
答案 1 :(得分:0)
您必须使用JavaScript才能实现此目的。这里有一个工作示例,它向您展示了实现此目的的步骤。
https://code.msdn.microsoft.com/How-to-clear-session-when-660c1e6b
此外,您可以使用会话超时来保持会话在短时间内保持活动状态。
答案 2 :(得分:0)
在注销时没有必要清除会话变量bcos会话没有持续..只有注销完成..所以在注销时清除会话会更好..
Session.Remove("UserID");
Session.Clear();
Session.Abandon();
在注销和检查期间