在我的ASP.net页面上,我将会话变量分配给Page_Load
private int userid{ get; set;}
if (!IsPostBack)
{
if (Session["userid"] != null)
{
userid= int.Parse(Session["userid"].ToString());
}
}
在我的添加按钮点击事件中,我正在使用userid
protected void btnAdd_Click(object sender, EventArgs e)
{
doSomething(userid);
}
最初检索该值并将其存储在userid
属性中,但在btnAdd_Click
中,userid
变为0.我将代码移出if(!IsPostBack)
块,修复了问题,但让我想知道一旦在页面加载时设置我的userid
属性到zero
是什么。不清楚按钮点击是否返回了新的页面实例或者是什么?有什么指导吗?
答案 0 :(得分:1)
您可以从页面加载中删除内容,因为数据在会话中,只需将属性更改为以下内容:
private int userid{ get{ return int.Parse(Session["userid"].ToString()); } }