AjaxPro在.NET中的應(yīng)用
簡(jiǎn)單介紹
Ajax(Asynchronous JavaScript + XML)應(yīng)用可以僅向服務(wù)器發(fā)送并取回必需的數(shù)據(jù),它使用SOAP或其它一些基于XML的web service接口,并在客戶端采用JavaScript處理來自服務(wù)器的響應(yīng)。因?yàn)樵诜?wù)器和瀏覽器之間交換的數(shù)據(jù)大量減少,結(jié)果我們就能看到響應(yīng)更快的應(yīng)用。同時(shí)很多的處理工作可以在發(fā)出請(qǐng)求的客戶端機(jī)器上完成,所以Web服務(wù)器的處理時(shí)間也減少了。
Ajax應(yīng)用程序的優(yōu)勢(shì)在于:
1. 通過異步模式,提升了用戶體驗(yàn)
2. 優(yōu)化了瀏覽器和服務(wù)器之間的傳輸,減少不必要的數(shù)據(jù)往返,減少了帶寬占用
3. Ajax引擎在客戶端運(yùn)行,承擔(dān)了一部分本來由服務(wù)器承擔(dān)的工作,從而減少了大用戶量下的服務(wù)器負(fù)載。
配置
Ajax.net有AjaxPro.dll和Ajax.dll兩個(gè)版本,這兩個(gè)版本使用上雖然差不多,但還是有區(qū)別的,主要的區(qū)別在下面兩點(diǎn):
1. web.config配置文件不一樣
Ajax.dll的配置文件寫法為
<addverb="POST,GET"path="ajax/*.ashx"type="Ajax.PageHandlerFactory,Ajax"/> |
AjaxPro.dll的配置文件寫法為
<addverb="*"path="ajaxpro/*.ashx"type="AjaxPro.AjaxHandlerFactory,AjaxPro"/> |
2. 調(diào)用服務(wù)器方法的時(shí)候方式不一樣,有很多朋友就是因?yàn)檫@個(gè)原因,發(fā)現(xiàn)命名空間找不到或者對(duì)象未定義
引用Ajax.dll的時(shí)候,調(diào)用服務(wù)器方法不要加命名空間,
引用AjaxPro.dll的時(shí)候,調(diào)用服務(wù)器方法需要加命名空間
例如當(dāng)頁面設(shè)置為這種設(shè)置的時(shí)候
<%@Pagelanguage="c#"Codebehind="Test.aspx.cs"AutoEventWireup="false"Inherits="Web.Test"%> |
3. 客戶端調(diào)用方式
Ajax.dll為 |
具體使用步驟
1. 首先下載AjaxPro 組件。并將AjaxPro.dll引用到網(wǎng)站(或項(xiàng)目)。
2. 修改Web.config。在 <system.web> 元素中添加以下代碼。
<configuration> |
3. 對(duì)AjaxPro在頁P(yáng)age_Load事件中進(jìn)行運(yùn)行時(shí)注冊(cè)。如:
protected void Page_Load(object sender, EventArgs e) |
4. 創(chuàng)建服務(wù)器端方法。只要給一個(gè)方法加上[AjaxPro.AjaxMethod]標(biāo)記,
該方法就變成一個(gè)AjaxPro可進(jìn)行影射調(diào)用的方法。如下:
[AjaxPro.AjaxMethod] |
5. 客戶端調(diào)用。
<script language="javascript"> |
【編輯推薦】