protected void Page_Load(object sender, EventArgs e)⼀⼀判断受否首次加载 { if (!this.IsPostBack) { s

请讲解一下每一句,在线等。
2025-03-27 04:48:15
推荐回答(2个)
回答1:

你这问题什么意思??? 哎,瞎问瞎答吧

Page_Load事件的执行是在第一次加载页面时发生(即为了响应客户的请求);
2.Page_Load事件的执行是在把该页面回发到服务器时发生;
ASP.NET处理重新页面的时候都要重新执行Page_Load;
即重建Page类,而Page_Load是重建页面第一个要执行的事件;
所以无论何种情况都会执行Page_Load,这时就有必要判断一下服务器处理Page_Load事件时是在何种情况发生;
而Page.IsPostBack正好解决了这个问题;
当是第一种情况的时候(为了响应客户的请求)Page.IsPostBack返回false;
当是第二种情况的时候(把该页面回发到服务器给服务器处理时)Page.IsPostBack返回True;
所以正确应用好Page.IsPostBack能大大的提高应用程序的性能;

回答2:

protected void Page_Load(object sender, EventArgs e)
{
int newsid = Convert.ToInt32(Request.QueryString["NewsID"].ToString());

if (!this.IsPostBack)
{
SqlConnection con = DB.createConnection();
con.Open();
SqlCommand cmd = new SqlCommand("select Title,Author,UpdateTime,Original,Content from News where NewsID='" + newsid + "'", con);
SqlDataReader sdr = cmd.ExecuteReader();
while (sdr.Read())
{

this.title.Text = sdr.GetString(0);
this.author.Text = sdr.GetString(1);
this.updatetime.Text = sdr.GetDateTime(2).ToString ();
this.content.Text = sdr.GetString(4);
this.original.Text = sdr.GetString(3);
}
sdr.Close();
cmd.CommandText = "select PicPath from Image where NewsID='" + newsid + "'";
string picpath = Convert.ToString(cmd.ExecuteScalar());
if (picpath == "")
{
this.Image1.Visible = false;
}
else
{
this.Image1.Visible = true;
this.Image1.ImageUrl =
this.Image1.ImageUrl =picpath ;
this.Image1.Width = 168;
this.Image1.Height = 120;
}
con.Close();

}
}每句代码的意思