自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

概述ASP.NET AJAX框架

開(kāi)發(fā) 后端
本文介紹運(yùn)行ASP.NET AJAX框架相應(yīng)的配置項(xiàng),當(dāng)然,建立一個(gè)ASP.NET AJAX Enabled Web Site項(xiàng)目時(shí),Web.config已經(jīng)配置好了。

如何在客戶(hù)端直接調(diào)用WebService中的方法?

1.Web.config中需要配置好運(yùn)行ASP.NET AJAX框架相應(yīng)的配置項(xiàng),當(dāng)然,建立一個(gè)ASP.NET AJAX Enabled Web Site項(xiàng)目時(shí),Web.config已經(jīng)配置好了。

2.想讓某個(gè)WebService可以被JS調(diào)用,需要做一下幾步:
◆在這個(gè)WebService文件里用“using System.Web.Script.Services;”引入這個(gè)命名空間。
◆在這個(gè)類(lèi)的上面添加“[ScriptService]”屬性。
◆在需要被調(diào)用的方法上添加“[WebMethod]”屬性。

具體例子可以參考《ASP.NET AJAX客戶(hù)端編程之旅(一)——Hello!ASP.NET AJAX》中的SayHelloService.cs的代碼。

3.調(diào)用WebService的客戶(hù)端頁(yè)面也要做相應(yīng)準(zhǔn)備。首先就是頁(yè)面中要有一個(gè)ScriptManager控件,然后需要在其中指明WebService文件的位置。如:

  1. <Services>  
  2. <asp:ServiceReference Path="~/SayHelloService.asmx" />  
  3. </Services> 

將這段代碼放在和標(biāo)簽之間,就可以使得這個(gè)頁(yè)面中的JS可以直接調(diào)用SayHelloService.asmx中的方法。

做好以上三項(xiàng)準(zhǔn)備,這個(gè)頁(yè)面中的JS代碼就可以使用我們熟悉的“類(lèi)名.方法名”的方法直接調(diào)用WebService中的方法了。

魔法背后的故事

我們知道,雖然我們一直說(shuō)是“直接調(diào)用”,但這是指在語(yǔ)法層面上“直接調(diào)用”。而實(shí)際上,JavaScript代碼是不可能真正直接調(diào)用后臺(tái)程序的,這中間一定使用了XMLHttpRequest對(duì)象。那么,到底是誰(shuí)給我們實(shí)施了“障眼法”?答案就在下面這張圖上:

上圖就是這個(gè)所謂“直接調(diào)用”真正的秘密。如圖,現(xiàn)在假設(shè)有個(gè)WebService類(lèi),名為Class1,有兩個(gè)方法:Method1和Method2。當(dāng)這個(gè)WebService被我們用上面提到的方法處理過(guò)后,ASP.NET AJAX框架就會(huì)自動(dòng)分析這個(gè)類(lèi),并且在客戶(hù)端生成一個(gè)這個(gè)類(lèi)的客戶(hù)端代理(Proxy),這個(gè)代理類(lèi)是一個(gè)JavaScript對(duì)象,其類(lèi)名、方法名都和后臺(tái)類(lèi)一致。而當(dāng)我們從客戶(hù)端的JS腳本調(diào)用時(shí),實(shí)際上調(diào)用的是這個(gè)代理類(lèi),而代理類(lèi)則使用XMLHttpRequest對(duì)象,通過(guò)傳統(tǒng)的Ajax方式,調(diào)用后臺(tái)類(lèi)。這樣,我們就感覺(jué)好像在前臺(tái)直接調(diào)用后臺(tái)類(lèi)似的。

可是……哪里似乎還是不一樣……

通過(guò)上面的分析,我們知道,ASP.NET AJAX調(diào)用后臺(tái)方法,說(shuō)到底還是使用的XMLHttpRequest對(duì)象,這樣傳統(tǒng)Ajax的限制,就使得我們不可能真的像在后臺(tái)調(diào)用方法一樣方便。

例如,我們?cè)诤笈_(tái)都是用“變量=類(lèi)名.方法名”或者“變量=對(duì)象名.方法名”的方式調(diào)用,這樣變量就直接獲取了這個(gè)方法的返回值,但是Ajax不行,它必須通過(guò)回調(diào)函數(shù)獲取返回值,這一點(diǎn)也體現(xiàn)在了ASP.NET AJAX的使用方法上??瓷弦黄恼碌睦泳椭?,即使使用了ASP.NET AJAX框架,仍然還是需要用回調(diào)函數(shù)的,只不過(guò)是語(yǔ)法上簡(jiǎn)化了。

【編輯推薦】

  1. 淺談ASP.NET MVC框架
  2. 介紹ASP.NET MVC中的MvcAjaxPanel
  3. ASP.NET MVC框架拯救UpdatePanel
  4. 用ASP.NET MVC源代碼尋找解決方案
  5. ASP.NET MVC框架的ActionInvoker
責(zé)任編輯:佚名 來(lái)源: IT168
相關(guān)推薦

2009-07-22 16:17:39

ASP.NET AJA

2009-07-20 10:16:13

配置ASP.NET A

2009-07-29 15:53:22

ASP.NET AJA

2009-07-23 10:52:38

2009-07-22 10:09:59

ASP.NET MVC

2009-07-21 09:18:02

UpdatePanelASP.NET AJA

2009-07-22 17:45:35

ASP.NET教程

2009-07-28 17:17:19

ASP.NET概述

2009-07-24 13:41:15

ASP.NET AJA

2009-07-22 16:11:43

ASP.NET AJA

2009-07-22 16:25:41

ASP.NET AJA

2009-07-22 16:05:34

ASP.NET AJA

2009-08-05 13:58:26

ASP.NET Mem

2009-07-23 16:55:55

ASP.NET特點(diǎn)

2009-07-27 15:52:21

ASP.NET特點(diǎn)ASP.NET概述

2009-07-29 13:04:59

2009-07-20 15:51:40

FubuMVC核心框架ASP.NET MVC

2009-07-31 13:24:43

ASP.NET AJA

2009-07-29 13:50:26

UpdatePanelASP.NET

2009-07-28 09:02:32

asp.net aja
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)