2012-05-08 161 views
0
static List<string> keywordList = new List<string>(); 

protected void btnEnter_Click(object sender, EventArgs e) 
{ 
    lbxKeywords.Items.Add(tbxKeyword.Text); 
    keywordList.Add(tbxKeyword.Text); 
    tbxKeyword.Text = string.Empty; 
} 

protected void btnSearch_Click(object sender, EventArgs e) 
{ 
    Session["keywords"] = keywordList; 
    keywordList.Clear(); 
    Response.Redirect("Results.aspx"); 
} 

当我清除列表会话成为空。这是为什么?会话清除时列表清除

感谢名单..

回答

2

那是因为你在会话变量中存储的是刚好到列表的引用,而不是一个列表的副本。

创建会话变量列表的副本:

Session["keywords"] = new List<string>(keywordList); 
+0

感谢名单..它的工作.. – Darshana