AjaxPro在ASP.NET中的應用簡介

來源:互聯網
上載者:User

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(_Default));//這的_Default是指頁面
         類的類名。如是放在命名空間,則需要寫上完整的命名空間(如:namespaces._Default)
    }

4、建立伺服器端方法。只要給一個方法加上[AjaxPro.AjaxMethod]標記,
   該方法就變成一個AjaxPro可進行影射調用的方法。如下:
   [AjaxPro.AjaxMethod]
    public string getValue(int a,int b)
    {   
         //該方法我們將實現從用戶端傳入兩個數,在伺服器端相加計算後返回到用戶端。



        return Convert.ToString(a+b);
    }  
 5、用戶端調用。
<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的設定檔寫法為
<add verb="POST,GET" 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#" Codebehind="Test.aspx.cs" AutoEventWireup="false" Inherits="Web.Test" %>
用戶端調用方式
Ajax.dll為
var response=Test.GetServerMethod();
alert(response.value);

AjaxPro.dll為
var response=Web.Test.GetServerMethod();
alert(response.value);

另外AjaxPro官方最新測試版本,在產生用戶端指令碼的時候會出現null 指標錯誤,所以請大家不要試用這種版本,盡量試用穩定版本

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.