我正面临以下任务:
当用户将网站日志导航到网站上时,请写下 以下信息
当前日期 当前时间 用户在访问期间查看或订购的最多5个产品的名称 由于我没有真正的产品列表网站,我打算在订单屏幕上进行。当用户输入订单数量时,我有一个TextChanged事件。所以我可以获得具有所需信息的单个产品的详细信息,但我不确定如何继续添加它?
这就是我正在做的事情:
foreach (GridViewRow row in this.GridView1.Rows)
{
// string pName1 = GridView1.DataKeys[test].Values["ProductName"].ToString();
testCookie.Values.Add("CurrentDate", currentDate);
testCookie.Values.Add("CurrentTime", currentTime);
testCookie.Values.Add("ProductName", pName);
Label lblPartStatus = ((Label)row.Cells[4].FindControl("Label8"));
double testprice = Convert.ToDouble(lblPartStatus.Text);
grandTotal = grandTotal + testprice;
}
此外,如何限制/检查已保存在Cookie中的产品数量,并用最新的产品替换最旧的产品?
感谢您的任何建议!
答案 0 :(得分:1)
我建议创建Dictionary
对象并为其添加键值对,然后将字典存储到Session
。
Dictionary<string, string> dic = new Dictionary<string, string>();
int i = 0;
foreach (GridViewRow row in this.GridView1.Rows)
{
dic.Add("CurrentDate" + i, currentDate);
dic.Add("CurrentTime" + i, currentTime);
dic.Add("ProductName" + i, pName);
i++;
// your code
}
Session["dic"] = dic;
用于检索这些值。
Dictionary<string, string> dic = (Dictionary<string, string>)Session["dic"];
int i = 0;
foreach(KeyValuePair<string, string> entry in dic)
{
string date = entry.Value.ToString();
}