当前位置导航:炫浪网>>网络学院>>网页制作>>ASP.NET教程

使用ASP.NET AJAX启用客户端缓存

欢迎进入.NET社区论坛,与200万技术人员互动交流 >>进入

    背景
    缓存是开发高性能和高可用性Web应用的重要手段之一。作为ASP.NET AJAX的关键功能,从客户端访问Script Method会被大量用于使用ASP.NET开发的AJAX应用。以下是这一功能最简单的例子。


  <asp:ScriptManager ID="ScriptManager1" runat="server" ScriptMode="Debug">
   <Services>
   <asp:ServiceReference Path="CacheService.asmx" />
   </Services>
  </asp:ScriptManager>
  
  <script language="javascript" type="text/javascript">
   var count = 0;
  
   function getServerTime()
   {
   window.count ++;
   CacheService.GetServerTime(onSucceeded);
   }
  
   function onSucceeded(result)
   {
   Sys.Debug.trace(result.format("HH:mm:ss"));
  
   if (count < 6)
   {
   window.setTimeout(getServerTime, 3000);
   }
   else
   {
   window.count = 0;
   }
   }
  </script>
  
  <input type="button" value="GetCurrentTime" onclick="getServerTime()" />
  <br /><br />
  
  <textarea cols="20" rows="10" id="TraceConsole"></textarea> 

 
    页面上有一个ScriptManager控件,其ScriptMode属性被设为Debug,这样我们就可以使用Sys.Debug.trace方法向ID为TraceConsole的TextArea元素中添加文本了。当点击页面上的按钮时,我们会连续访问6次服务器端的方法以获得服务器端的时间,每两次请求之间将会有一个3秒的间隔。服务器端的方法定义如下:

  [ScriptService]
  public class CacheService : System.Web.Services.WebService
  {
   [WebMethod]
   public DateTime GetServerTime()
   {
   return DateTime.Now;
   }
  } 

 
    打开页面,点击按钮,我们可以在页面中看到如下的结果:
  


相关内容
赞助商链接