• (转)ajax.dll,ajaxpro.dll的区别和用法


     

    ASP.NET AjaxPro的应用

    1、首先下载AjaxPro组件。并将AjaxPro.dll引用到网站(或项目)。

    2、修改Web.config。在 <system.web> 元素中添加以下代码。

    -XML
    <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事件中进行运行时注册。如:

    -C#
       protected void Page_Load(object sender, EventArgs e)
        {
            AjaxPro.Utility.RegisterTypeForAjax(typeof(_Default));//这的_Default是指页面
             类的类名。如是放在命名空间,则需要写上完整的命名空间(如:namespaces._Default)
        }


    4、创建服务器端方法。只要给一个方法加上[AjaxPro.AjaxMethod]标记,
    该方法就变成一个AjaxPro可进行影射调用的方法。如下:
    -C#
       [AjaxPro.AjaxMethod]
        public string getValue(int a,int b)
        {  
             //该方法我们将实现从客户端传入两个数,在服务器端相加计算后返回到客户端。

            return Convert.ToString(a+b);
        }


    5、客户端调用。
    -HTML
    <script language="javascript">
       function getValue(){  
       _Default.getValue(1,2,getGroups_callback);//该处即调用服务器端的_Default.getValue方法。
                   这在里边需要指定个回调函数,以接受服务器端处理完后返回客户端结果。
       form1.TextBox1.value="123";
          }

       //这个方法用户接受并处理服务器端返回的结果。
       function getGroups_callback(response){
       var dt=response.value;
       alert(dt);
       }
    </script> 


      到这一个简单,但已是一个完整的AjaxPro的使用了。
      当然AjaxPro 还可做很多更实用的,更强大的功能。这个仅做个抛砖引玉。其它的改天整理后再放上来。


      请各位注意,Ajax.net实际有AjaxPro.dll和Ajax.dll两个版本,这两个版本使用上虽然差不多,但还是有区别的,主要的区别在下面两点
    (1)web.config配置文件不一样
    Ajax.dll的配置文件写法为
    -XML
    <add verb="POST,GET" path="ajax/*.ashx" type="Ajax.PageHandlerFactory, Ajax" />

    AjaxPro.dll的配置文件写法为
    -XML
    <add verb="*" path="ajaxpro/*.ashx" type="AjaxPro.AjaxHandlerFactory, AjaxPro"/>


    (2)调用服务器方法的时候方式不一样,有很多朋友就是因为这个原因,发现命名空间找不到或者对象未定义引用Ajax.dll的时候,调用服务器方法不要加命名空间,应用AjaxPro.dll的时候,调用服务器方法需要加命名空间。

    例如当页面设置为这种设置的时候
    -HTML
    <%@ Page language="c#" Codebehind="Test.aspx.cs" AutoEventWireup="false" Inherits="Web.Test" %>


    客户端调用方式:
    Ajax.dll为
    -JavaScript
    var response=Test.GetServerMethod();
    alert(response.value);


    AjaxPro.dll为
    -JavaScript
    var response=Web.Test.GetServerMethod();
    alert(response.value);

    -XML

    <add verb="*" path="ajaxpro/*.ashx" type="AjaxPro.AjaxHandlerFactory, AjaxPro"/>
    <remove verb="*" path="*.asmx"/>
    <add verb="*" path="*.asmx" type="AjaxPro.AjaxHandlerFactory, AjaxPro"/>


    出处:http://hi.baidu.com/kylin451771150/blog/item/89b7b3ed9e1d95d2b31cb11d.html
  • 相关阅读:
    flexible.js 移动端自适应方案
    Vue为什么不能检测数组变动
    Vue 组件间通信六种方式
    训练首个神经网络:基本分类
    对seq2seq的粗浅认识
    数学模型的过拟合和欠拟合
    在二叉树中寻找值最大的节点并返回——LintCode入门
    Android 包管理机制
    自定义View的三种实现方式及自定义属性使用介绍
    Paint.setFlags中flag意义及使用方法
  • 原文地址:https://www.cnblogs.com/wangyt223/p/4380951.html
Copyright © 2020-2023  润新知