AjaxPro的使用

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/p/2009448.html