我正在尝试创建一个对象,然后将其保存在一个Session中,然后重定向到另一个页面并使用Session中保存的对象。
这是我的代码,因为它无法正常运行,因此似乎在某处出错。
第1页
public FitnessClassOpportunity GetData()
{
return new FitnessClassOpportunity(txtId.Text, txtDescription.Text, txtLocation.Text,
Convert.ToInt32(tx2.Text), dropDownDay.SelectedItem.ToString(),
txtTime.Text, Convert.ToInt32(txtDuration.Text), CheckBox1.Checked,
txtDatecompleted.Text, txtNumSession.Text);
}
protected void Button1_Click(object sender, EventArgs e)
{
//result from breaking point: f has the data
FitnessClassOpportunity f = GetData();
//result from breaking point: f still has the data but Session is still NULL
Session["object"] = f;
Response.Redirect("Default.aspx");
}
第2页
protected void Page_Load(object sender, EventArgs e)
{
if (!this.IsPostBack)
{
}
else
{
//add the object from the session to a list
fitnessClassList.addFitnessClass((FitnessClassOpportunity)Session["object"]);
UpdateListbox();
}
}
答案 0 :(得分:1)
如果进行重定向,则不再是回发,并且不会执行将对象添加到列表的代码。运行调试器,你会看到。
编辑: 可能会禁用会话状态。在web.config中设置它(应该是默认值):
<system.web>
<sessionState mode="InProc"/>
...
</system.web>