【发布时间】:2015-11-11 07:22:57
【问题描述】:
我有一个带有产品网格的网络表单。当您单击产品时,它会将您带到一个页面,该页面显示带有“添加到购物车”按钮的单个产品。我想要做的是,当我单击“添加到购物车”按钮时,每次用户单击“添加到购物车”按钮时,会话都会将 productId 的查询字符串存储在数组列表中。我可以将它存储在会话变量中,但是当我想显示所有查询字符串时,只显示最近的一个。提前致谢。
下面是“加入购物车”按钮的代码:
protected void btnAdd_Click(object sender, EventArgs e)
{
string productId;
ArrayList arProduct = new ArrayList();
if (Request.QueryString.Get("ProductId") != null)
{
productId = Request.QueryString.Get("ProductId");
arProduct.Add(productId);
}
Session["Cart"] = arProduct;
Response.Redirect("Cart.aspx");
}
下面是 Cart.aspx 页面加载的代码:
protected void Page_Load(object sender, EventArgs e)
{
if (Session["Cart"] != null)
{
lblProducts.Text = "Here are your products: " + "<ul>";
ArrayList alProduct = new ArrayList();
alProduct = (ArrayList)Session["Cart"];
foreach (string item in alProduct)
{
lblProducts.Text += "<li>" + item + "</li>";
}
lblProducts.Text += "</ul>";
}
}
【问题讨论】:
标签: c# asp.net .net arraylist session-variables