1、下载AjaxPro组件。将AjaxPro.dll引用到网站(项目)。
2、修改web.config。在<system.web>中添加代码:
<configuration> <system.web> <httpHandlers> <!--Register the ajax handler--> <add verb = "*" path="ajaxpro/*.ashx" type="AjaxPro.AjaxHandlerFactory,AjaxPro"/> </httpHandlers> </system.web> </configuration>3、AjaxPro在页Page_Load事件中进行运行时注册。如:
protected void Page_Load(object sender, EventArgs e) { AjaxPro.Utility.RegisterTypeForAjax(typeof(AnjianApp.Test));//对AjaxPro在页Page_Load事件中进行运行时注册,这里的 //AnjianApp.Test是指页面类的类名。如果放在命名空间,则写出完整的命名空间.类名,如本例。 }
4、创建服务器端方法,只要给一个方法加上[AjaxPro.AjaxMethod]标记,该方法就可以变成一个AjaxPro可进行映射调用的方法。
#region 创建服务器端方法,只要给一个方法加上[AjaxPro.AjaxMethod]标记,该方法就可以变成一个AjaxPro可进行映射调用的方法 [AjaxPro.AjaxMethod] public string getString(int a,int b) { //该方法实现从客户端传递两个参数,在服务器端相加后将结果返回给客户端 return Convert.ToString(a+b); } #endregion
5、客户端调用
<script type="text/javascript"> function getString() { AnjianApp.Test.getString(1, 2, getString_callBack); //调用服务器端的getString方法,同时指定回调函数getString_callBack //来接受从服务器端传过来的数据 } //回调函数,用于接受从服务器端传过来的数据 function getString_callBack(result) { var test = result.value; alert(test); } </script>
完整的页Page_Load事件代码为:
View Code 1 using System; 2 using System.Collections.Generic; 3 using System.Web; 4 using System.Web.UI; 5 using System.Web.UI.WebControls; 6 using AjaxPro; 7 8 namespace AnjianApp 9 { 10 public partial class Test : System.Web.UI.Page 11 { 12 protected void Page_Load( object sender, EventArgs e) 13 { 14 AjaxPro.Utility.RegisterTypeForAjax( typeof (AnjianApp.Test)); // 对AjaxPro在页Page_Load事件中进行运行时注册,这里的 15 // AnjianApp.Test是指页面类的类名。如果放在命名空间,则写出完整的命名空间.类名,如本例。 16 } 17 #region 创建服务器端方法,只要给一个方法加上[AjaxPro.AjaxMethod]标记,该方法就可以变成一个AjaxPro可进行映射调用的方法 18 [AjaxPro.AjaxMethod] 19 public string getString( int a, int b) 20 { 21 // 该方法实现从客户端传递两个参数,在服务器端相加后将结果返回给客户端 22 return Convert.ToString(a + b); 23 } 24 #endregion 25 } 26 }到此完成了一个完整的AjaxPro的使用了。
****************************************************************华丽的分割线*********************************************************************************
Ajax.net有AjaxPro.dll和Ajax.dll两个版本。两个版本差不多。主要区别是:
(1)Web.config不一样。
Ajax.dll为:
<add verb = "GET,POST" path="ajax/*.ashx" type="Ajax.PageHandlerFactory,Ajax"/>
AjaxPro.dll为:
<add verb = "*" path="ajaxpro/*.ashx" type="AjaxPro.AjaxHandlerFactory,AjaxPro"/>
(2)调用服务器方法不一样。如果发现命名空间找不到或者对象未定义引用Ajax.dll时,调用服务器方法不要加命名空间,应用AjaxPro.dll时,调用服务器方法需要加命名空间。
例如:<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Test.aspx.cs" Inherits="AnjianApp.Test" %>
客户端调用方式:
Ajax.dll为:function getString() { Test.getString(1, 2, getString_callBack); }
AjaxPro.dll为:function getString() { AnjianApp.Test.getString(1, 2, getString_callBack);
}
转载于:https://www.cnblogs.com/Mygirl/archive/2011/04/08/2009448.html
相关资源:AjaxPro使用说明 - lexus - 博客园