ASP.NET+AJAX解决网页打开等待问题
发表于:2007-06-30来源:作者:点击数:
标签:
一、 前言 人们不得不等待。事实上,用户在操作计算机时,如果等待时间超过大约200毫秒,他们一般都感到厌烦。当你的基于万维网的应用程序使用一个需要耗费许多秒甚至几分钟的进程时,这可能成为一个问题。显然,你不可能仅通过建立一个进度条对话框或一等待
一、 前言
人们不得不等待。事实上,用户在操作计算机时,如果等待时间超过大约200毫秒,他们一般都感到厌烦。当你的基于万维网的应用程序使用一个需要耗费许多秒甚至几分钟的进程时,这可能成为一个问题。显然,你不可能仅通过建立一个进度条对话框或一等待光标就算万事大吉。
幸好,ASP.NET为此提供了一些不同的
解决方案来处理这种相当耗时的进程-具体情况要依赖于要求的交互级别和你愿意处理的复杂程度。本文首先通过一个示例应用程序来说明这个问题并且通过两种方案来运行:一种使用了简单查询技术,而另一种使用一种更高级的AJAX解决方案。
千万警惕,在.NET框架中已发现存在一些错误的方式。其中之一就是IAsyncHTTPHandler-乍看来,它似乎有助于较长网页的请求。然而,这个异步HTTP处理器却是被设计用来释放处理器的-尽管,此时在一页面之上的某些任务需耗费一些时间但是并不需要任何CPU。一个好的例子就是在一页面的中间发出Web请求。在这种情况中,异步HTTP处理器是很有效率的。
二、 问题 在本文中,我要讨论一个不同的问题。在本示例应用程序中,我创建了一个页面-它用于为五个不同的机场报告当前的温度、风级和另外一些天气信息。Web服务要花费大约五秒钟来取得每一项数据。因此,如果我让该页面如图1所示运行,那么在
服务器返回一页面前要花费大约一分钟-这对于任何用户都是无法接受的等待时间。