页面分部分加载呈现收集(不断更新中)

前言           

因项目首页内容多,每次点击都会有一段画面空白的时间,使用感不好,于是找找看有没有好方法。这里就把收集到的方法记录下来,供以后查阅。本篇只有开始没有结束,会不断地添加内容。^_^

目录             

1.使用Response.Flush(),有多少输出多少;

1.使用Response.Flush(),有多少输出多少 

默认情况下Asp.net页面是启动了Response的输出缓存,那么全部输出的内容都先存储在输出缓存中,当服务器对请求处理完后再把输出缓存
的内容一次性向客户端发送。如果禁用输出缓存,那么响应流中的数据会马上传送到客户端,通过Respose.Buffer=false来设定,但禁用输出
缓存会引起性能上的问题。如果想分部分发送响应内容和控制输出缓存内容的具体发送时刻,可以在启用response输出缓存下调用
Response.Flush(),该方法就是把当前输出缓存中的内容向客户端发送。

  针对asp.net要注意一点,除非使用了Response.Write()和Response.WriteLine()等直接把内容写到响应
流中外,在Render事件之前的任何操作内容都还没写到Response中。也就是说aspx页面上的html等,和aspx.cs文件中添加到控件树
的内容在Render事件之前还没写入Response中。下面是验证的例子:

aspx文件:



1 <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="FlushTest.aspx.cs" Inherits="Client.FlushTest" %>
2 <div style="color:Yellow">aspx file</div>

aspx.cs文件:

public partial class FlushTest : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            Response.Write("<div style='color:red'>Response.Write before flush</div>");
            Response.Flush();
            Response.Write("<div style='color:blue'>Response.Write after flush</div>");
        }
    }

结果:

所以对于Asp.net来说这招不太使用。加上使用该方法和把页面缓存buffer设为false都会出现

“/”应用程序中的服务器错误。


会话状态已创建一个会话 ID,但由于响应已被应用程序刷新而无法保存它。

说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.Web.HttpException: 会话状态已创建一个会话 ID,但由于响应已被应用程序刷新而无法保存它。

 的问题,解决方法是加一个Global.asax文件就ok了。具体为什么我还没找到答案。。。。。

时间: 2024-10-08 16:19:31

页面分部分加载呈现收集(不断更新中)的相关文章

基于c#+.net 编写的在线考试页面无法正确加载 及无法正确评分

问题描述 基于c#+.net 编写的在线考试页面无法正确加载 及无法正确评分 "求各位大神帮帮忙修改下 下面的代码" c#+.net做一个课程设计 考试页面实现加载三道题 点击提交后并自动的判断 得出分数我自己做的这个在线考试页面无法正确记录考题数量,加载考题的时候也无法正确加载三道题 i的值总是超出 求各位大神帮帮忙 在线考试页面 public partial class student_startexam : System.Web.UI.Page{ public string ri

类似(安居客、淘宝网),查询条件用链接,页面元素重新加载问题

问题描述 真诚向各位请教一个问题,我找了两天,也没有解决方案:asp.net,网站,为了seo优化,每个查询条件都是一个a标签链接,安居客.淘宝网,都是这样实现的,如:../suzhou/listst_-z1-a16.aspx这样,一个新链接,就是一个请求,那么所有的元素都要重新加载,要查询数据库的也要重新查,请问哪位有解决办法,或以前做过的,能给些提示.很感谢.我想用缓存,但元素都重新加载了,查询条件也要重新初始化,还要分析url传参,把选中的条件赋予样式,这样实现工作量.显示效果都不好.分不

Winform开发框架之客户关系管理系统(CRM)的开发总结系列4-Tab控件页面的动态加载

在前面介绍的几篇关于CRM系统的开发随笔中,里面都整合了多个页面的功能,包括多文档界面,以及客户相关信息的页面展示,这个模块就是利用DevExpress控件的XtraTabPage控件的动态加载实现的,本篇文章主要介绍两种方式的动态加载,一个是对用户控件(UserControl)模块的动态加载,一个是对普通窗体(Form)的动态加载,通过这两种方式,我们有时候可以动态实现很丰富的界面效果. 1.用户控件(UserControl)模块在Tab控件中的动态加载 参考了很多CRM的系统,一般都是把CR

js-点击A页面链接,B页面无刷新加载内容

问题描述 点击A页面链接,B页面无刷新加载内容 比如百度音乐,在A页面不管点击多少个音乐,都只打开一个B页面并且无刷新加载播放.怎么用JS和其它编程语言来实现? 解决方案 <a target='musicBox' href=""/music"">播放1</a><a target='musicBox' href=""/music"">播放2</a><a target='mus

ControlJS优化阿里妈妈广告提高页面脚本的加载速度

文章简介:用ControlJS优化阿里妈妈广告. 长时间以来阿里妈妈的广告载入策略一直存在些问题,很多页面也因为阻塞式的广告载入而被拉低性能,影响用户体验.毕竟阿里妈妈广告的渲染依赖于诸多嵌套的document.write.ControlJS的目标就是解决js的阻塞式渲染,因此灵玉急不可耐想与同仁们共同去揭秘ControlJS-- Steve Souders在2010年12月份发布了ControlJS项目,该项目是让开发者更好的去控制javascript文件的下载和执行,从而提高了页面脚本的加载

jsp页面关于异步加载问题

问题描述 jsp页面关于异步加载问题 JSP页面中使用jQuery的load()方法加载入另一个JSP页面,发现一个很奇怪的问题,如果不传参过去页面就无法显示,以下是我没带参数的jQuery代码: $(document).ready(function() { $("#rightitem").load("selorder.jsp"); }); rightitem是显示selorder.jsp的div的id,本页面和selorder.jsp是在同一目录里,求大神帮忙看一

jQuery+ajax实现滚动到页面底部自动加载图文列表效果(类似图片懒加载)_jquery

本文实例讲述了jQuery+ajax实现滚动到页面底部自动加载图文列表效果.分享给大家供大家参考,具体如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml&qu

jquery中如何在页面加载的时候根据action中的值的长度动态生成div

问题描述 jquery中如何在页面加载的时候根据action中的值的长度动态生成div 我action中的数据是保存在json中,然后要根据数据记录数生成多个div, //门店信息信息加载 $.ajax({ url:"findAllStoreInfoAction.action?workDate="+showCurrentTime(), dataType:"json", type:"POST", async:false, success: func

代码-求助各位大神LIstfragment中,分线程获取数据后刷新界面崩溃,用分线程加载数据后

问题描述 求助各位大神LIstfragment中,分线程获取数据后刷新界面崩溃,用分线程加载数据后 如题:代码如下,要在viewpager中的一个fragment中加载一个listview,用分线程加载数据后,handleMessage给成员变量的集合赋值后,notify,会直接崩溃 /** 报警图片 */ public class AlarmPhotoFragment extends ListFragment { private int mType = 0; private ListView