|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
也许C#刚上市的时候有些抄袭Java吧,但自从C#2.0上市之后,整个局面就扭转乾坤了,不但Java在模仿C#,而且他从来都没能跟得上C#的脚步。我们先懂得一下BufferOutput属性:
BufferOutput属性用于猎取或设置一个值,该值唆使是不是缓冲输入并在处置完全个页以后发送它。默许值是true,因而我们默许情形下我们的.Net都是全体缓冲完了才在扫瞄器上显现出来。如许就有大概在我们的页面实行工夫很长的情形下页面会一向处于空缺形态,让用户觉得我们的页面打不开了而关失落扫瞄器。这时候候我们可让页面实行一部分就显现一部分,好让用户晓得我们的页面实行到那一步了。
办理计划一:
BufferOutput默许值为true,我们不改动这个设置值,使用Response.Flush办法和Clear办法将以后缓冲区的信息输入。这个办法对照广泛,也不会很影响功能,当页面在处置一个庞大的程序的时分,能够立即输入一些提醒信息。
注释一下用到的两个办法:
Response.Flush()当即输入缓冲区的数据
Response.Clear()清空缓冲区的数据
示例:
protectedvoidPage_Load(objectsender,EventArgse)
{
if(!IsPostBack)
{
ShowMessage("你",150);
Response.Flush();
Response.Clear();
Thread.Sleep(1000);
ShowMessage("好",150);
Response.Flush();
Response.Clear();
Thread.Sleep(1000);
}
}
privatevoidShowMessage(strings,intcount)
{
StringBuilderstr=newStringBuilder();
for(inti=0;i<count;i++)
{
str.Append(s);
}
Response.Write(str.ToString());
}
办理计划一:
把BufferOutput值设为false,这时候间服务器实行一行就发送一行数据到客户端,也就是立即显现信息。但注重,如许会很影响功能,由于如许,数据就没有在服务器缓存了。
示例:
protectedvoidPage_Load(objectsender,EventArgse)
{
if(!IsPostBack)
{
Response.BufferOutput=false;
ShowMessage("你",150);
Thread.Sleep(1000);
ShowMessage("好",150);
Thread.Sleep(1000);
}
}
privatevoidShowMessage(strings,intcount)
{
StringBuilderstr=newStringBuilder();
for(inti=0;i<count;i++)
{
str.Append(s);
}
Response.Write(str.ToString());
}
注重:
1,即便设置了BufferOutput值设为false,也要在缓冲区数据很多于256字节的情形下才会输入到客户端,经测试FF扫瞄器没有这个成绩。
2,UFT8编码的汉字一样平常占三个字节(Unicode编码是两个字节),以是我们在上例中轮回输入150个字符,而不是50个,由于50个就有大概看不到效果。兄弟们,想来你们都看过了昨天的比赛了。我现在的痛苦状跟当时应该差不多。希望本版.net老师不吝赐教,为小弟这一批迷途的羊羔指一条阳光之道!您也知道:学习技术如果只有一个人摸索,那是一件多么痛苦的事情!还有,如果万辛能得名师或长者指点,那又是多么一件幸福和快乐的事情! |
|