asp.net中的页面刷新机制

今天在测试我的一个文档上传管理系统意外的发现asp.net的刷新机制,原来每次你刷新一次页面首先它不是与postback机理相同,他是与你在刷新前一个页面的操作是一致的,比如,你是第一次载入页面的话,如果刷新页面那么在!ispostback中的程序在刷新会在执行一遍.
如果你是在第二次或更多刷新页面,那么刷新页面后执行的就不会是!Ispostback,而是ispostback中的程序,并且会执行在上次页面刷新你进行的操作。下面以一段 代码来演示这段过程吧!
 protected void Page_Load(object sender, EventArgs e)
    
{
        
if (!IsPostBack)
        
{
            Response.Write(
"asdf\n");
           Session[
"b"= "a";
        }

        
else
        
{
            Response.Write(
"sdfsa");
        }

    }

    
protected void Button1_Click(object sender, EventArgs e)
    
{
        Session[
"b"+= "a";

        Response.Write(Session[
"b"].ToString());
    }
如果你第一次载入页面时,其页面显示的是asdf
如果你立马刷新,仍然不变asdf
如果你点击那个按钮后 那么页面显示的sdfsaa
那么你再次刷新后 那么页面显示的就是sdfsaaa
再刷新,那么就是页面显示                      sdfsaaaa
posted @ 2006-09-13 00:59  枫崖  阅读(798)  评论(4编辑  收藏  举报