for(int i=0;i<dsAdmin.Tables[0].Rows.Count;i++)
{
lblAdmin.Visible = true;
lblAdminNote.Visible = false;
Session["ProjectName"] = dsAdmin.Tables[0].Rows[i][0];
lblAdmin.Text += "你发布了:<a href='ProjectInfo.aspx'>"+dsAdmin.Tables[0].Rows[i][0]+"</a>项目<br/>";
}安装上面的代码我读取出来了3个值:
你发布了:A项目
你发布了:B项目
你发布了:C项目
可是当我单击A的时候,因为for语句执行结束之后,session的值就是C了。大家有没有什么好的方法解决呢?
放到一个数组 或 list<T>Session["ProjectName"] = 这个数组;然操作这个数组
++ 定义一个变量把循环的值保存起来 然后在循环外把值赋给session就可以了
{
lblAdmin.Visible = true;
lblAdminNote.Visible = false;
lblAdmin.Text += "你发布了:<a href='ProjectInfo.aspx?value=" + dsAdmin.Tables[0].Rows[i][0] + "'>" + dsAdmin.Tables[0].Rows[i][0] + "</a>项目<br/>";
}
ProjectInfo.aspx (你的接收页面)
Session["ProjectName"] = Request["value"].ToString();是不是更好些呢- -
在Session存个对象,对象包含需要的数据
用split分割
在循环里用session完全不理解啊