asp.net IsPostback无效

来源:百度知道 编辑:UC知道 时间:2024/06/04 03:01:28
以下是我的一段代码,目的是在点击进入该页面时执行Add操作,在该页面上刷新页面时不执行Add.
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
int id = Convert.ToInt32(Request.QueryString["ID"]);
MWEB.BLL.Table_ReleaseBLL.Add(id);
}

}
问题在于不管我是首次进入页面还是刷新页面,Add函数都会被执行到

刷新当然会执行了,刷新就是重新加载页.就想等于第一次加载.
Page.IsPostback指的是是不是客户端回发.比如有个按钮单击,单选列表改变等等.

if (!Page.IsPostBack)
{
if(Session["IsFirstLoad"] == null)
{
int id = Convert.ToInt32(Request.QueryString["ID"]);
MWEB.BLL.Table_ReleaseBLL.Add(id);
Session["IsFirstLoad"] = 1;
}
}

然后你想添加记录就把Session["IsFirstLoad"]先清空

//改成下面的样子
protected void Page_Load(object sender, EventArgs e)
{
int id = Convert.ToInt32(Request.QueryString["ID"]);
MWEB.BLL.Table_ReleaseBLL.Add(id);

}

确实有这问题,原因是被执行2次。你在网上找找被执行2次的原因具体的我忘记了http://blog.csdn.net/vividboy/archive/2007/09/13/1783162.aspx

页面传入了ID 接收了ID 所以重新加载了