长沙电脑维修-长沙电脑上门维修-笔记本维修-上门修显示器
滚动新闻:
  网站首页     维修业界     网络安全     硬件故障     软件故障     系统故障     硬件维修     系统安装     驱动下载     维修信息  
欢迎来到长沙电脑维修网,一个电话上门维修电脑 13347311093 0731-82917806 您的满意是我们进步的动力! 请您留言|设为首页|加入收藏
长沙电脑上门维修
您当前位置:网站首页 >> 硬件故障 >> 显卡故障 >> 正文阅读

最基本的AJAX框架的实现方法


来源:Ok3w新闻发布系统 发布时间:2009-05-01 00:38:02 查看次数:

长沙监控安装

环境:Window Xp sp2 + .Net FramwWork 2.0.50727。
Asp.Net 2.0自带的客户端回调
Asp.Net 2.0已经发布。2.0有了许多新特性,客户端回调就是其中之一。客户端回调允许我们不经过回发而调用服务器端的方法,与AJAX提供的功能是一致的,但是不如AJAX灵活,AJAX可以自定义调用的方法,2.0自带的回调功能却不行。要使用客户端回调功能必须实现System.Web.UI.IcallbackEventHandler接口。
这个接口包含两个方法:

  1. //客户端回调时固定调用此方法  
  2. public void RaiseCallbackEvent(String eventArgument)  
  3. //执行完RaiseCallbackEvent后将调用此方法。此方法的返回值将被发回客户端  
  4. public string GetCallbackResult() 

例一:

  1. .cs:  
  2. String cbReference = Page.ClientScript.GetCallbackEventReference(  
  3.  
  4. this,"arg""ReceiveServerData""context");  
  5. String callbackScript;  
  6. callbackScript = "function CallServer(arg, context)" + "{ " + cbReference + "} ;";  
  7. Page.ClientScript.RegisterClientScriptBlock(  
  8.  
  9. this.GetType(),"CallServer", callbackScript, true);  
  10. javascript:  
  11.  

 

AJAX介绍
AJAX并不是一种新的技术,而是一些已有技术的有机结合,主要包括:XmlHttp、Reflect。一个AJAX框架基本上包括:一个自定义的HttpHandler、一段JavaScript代码。

AJAX运行机制
以前我们使用XmlHttp实现无刷新页面的时候,是用XmlHttp来请求一个隐藏的页面,使用(Asp/Asp.Net)自带的HttpHandler,而在AJAX中,我们请求的也是一个隐藏的页面,不同的是这个页面的HttpHandler是由我们自己来实现。

打造自己的AJAX:
1.首先我们要实现一个Http处理程序(HttpHandler)来响应客户端的请求:
实现自定义的HttpHandler需要实现IHttpHandler接口。
该接口包含一个属性和一个方法:

 

  1. bool IHttpHandler.IsReusable  
  2. void IHttpHandler.ProcessRequest(HttpContext context)  
  3. Example:   
  4. bool IHttpHandler.IsReusable  
  5. {  
  6.  get { return true; }  
  7. }  
  8. void IHttpHandler.ProcessRequest(HttpContext context)  
  9. {  
  10.  context.Response.Clear(); //获取要调用的方法  
  11.  string methodName = context.Request.QueryString["me"];  
  12.  //获取程序集信息。  
  13.  //Czhenq.AJAX.Class1.Dencode是自定义的字符串编码方法  
  14.  string AssemblyName = Czhenq.AJAX.Class1.Dencode(context.Request.QueryString["as"]);   
  15.  
  16.    //获取方法的参数   
  17.  string Arguments = context.Request.QueryString["ar"]; //开始调用方法  
  18.  Type type = Type.GetType(AssemblyName);  
  19.  MethodInfo method = type.GetMethod(methodName,   
  20.  
  21.      BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Static | BindingFlags.Instance);   
  22.  if (method != null)   
  23.  {  
  24. //参数使用","分隔  
  25. string[] args = Arguments.Split(",".ToCharArray());  
  26. ParameterInfo[] paras = method.GetParameters();   
  27. object[] argument = new object[paras.Length];  
  28. for (int i = 0; i < argument.Length; i++)  
  29. {  
  30.  if (i < args.Length) {   
  31. //因为XmlHttp传递过来的参数全部时String类型,所以必须进行转换  
  32. //这里只将参数转换为Int32,并不做其他考虑。   
  33. argument[i] = Convert.ToInt32(args[i]);  
  34.  }  
  35. }  
  36. object value = method.Invoke(Activator.CreateInstance(type, true), argument);  
  37. if (value != null) context.Response.Write(value.ToString());  
  38. else context.Response.Write("error");   
  39.  }  
  40.  //处理结束   
  41.  context.Response.End();  
  42. }  

·上一条:Ajax 技术从入门到精髓
·下一条:AJAX调用WCF服务项模板[ASP.NET]
相关文章
·电脑该换什么配置才可以玩大型的3D游戏 2010-08-08 22:06:05
·显卡温度多少是正常的?夏天会烧卡吗? 2011-08-01 15:47:55
·怎样提高集成显卡的性能问答 2010-08-04 01:44:28
·用驱动人生更新显卡后显示不正常了 2012-11-26 23:57:25
·玩游戏时为何出现黑屏现象 2011-03-05 16:36:34
·退出“FEAR”游戏时出现花屏或黑屏现象 2012-03-21 19:58:19
·显卡显存相关技术与名词解释 2010-05-29 04:04:46
·集成显卡和独立显卡的区别 2010-10-02 22:55:34
文章评论
现在有0人对本文发表评论 查看所有评论
同行交流
电脑维修公司
宇翔电脑维修
  最新文章
·用VGA接口连显示器 电脑经常死机无法进系统
·显卡电容爆浆故障导致进系统时花屏
·用驱动人生更新显卡后显示不正常了
·显卡不装驱动正常使用但是装上驱动就蓝屏重
·台式电脑的显卡有多个显示接口也不能实现三
·电脑停留在开机主板信息界面不动了
·什么因素影响笔记本显卡的性能
·打开软件或文档显示空白 鼠标移过才显示出来
·电脑开启TC功能后总是出现死机现象
·什么原因导致显卡瞬间电压不够而死机
·主板集成显卡和独立显卡冲突的解决方法
·插显卡后开不了机 电脑发出一长两短声
·退出“FEAR”游戏时出现花屏或黑屏现象
·电脑玩游戏花屏但电脑没死机
·显卡连接电视显示黑白画面
苹果双系统安装
  热门文章
·显卡显存容量是越大越好吗
·电脑停留在开机主板信息界面不动了
·电脑集成显卡坏了怎么办?
·如何设置显卡到最佳性能
·用驱动人生更新显卡后显示不正常了
·电脑开机黑屏 检测卡显示代码85
·显卡不装驱动正常使用但是装上驱动就蓝屏重
·Ajax 技术从入门到精髓
·显卡GPU主流应用技术详解
·显示器显示颜色不正常 更改不了分辨率
·主板集成显卡和独立显卡冲突的解决方法
·怎样提高集成显卡的性能问答
·Ajax让网页木马“悄悄的执行”
·Web2.0网站攻击新潮—Ajax Hacking
·显卡与主板接触不良导致电脑无法启动
关于我们 | 公司介绍 | 维修报价 | 免责声明 | 阅读须知 | 内容目录 | 湘ICP备16016646号-1
联系邮箱:270024428@qq.com 联系QQ:270024428
Copyright 2019, 长沙电脑维修网版权所有.