日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線(xiàn)溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
使用ASP.NETAJAX調(diào)用WCF服務(wù)項(xiàng)模板

開(kāi)發(fā)平臺(tái)

1.Visual Studio 2008 SP1

2..NET Framework 3.5 SP1

3.ASP.NET AJAX

4.IIS 7或者VS 集成Web服務(wù)器 [WCF 和 SVS 文件配置]

5.Windows Vista

介紹

WCF (Windows Communication Foundation)中新增了很多特性來(lái)加強(qiáng)微軟應(yīng)用程序開(kāi)發(fā)平臺(tái),尤其是在應(yīng)用程序之間的通信上。在本篇文章 中,我們講了解到WCF是如何直接在客戶(hù)端JavaScript中使用的場(chǎng)景。這是由ASP.NET AJAX提供的一項(xiàng)非??岬奶匦?。在本篇文章中,我們 不 會(huì)對(duì)WCF的內(nèi)部細(xì)節(jié)加以大量討論,而是講主要精力放在如何在JavaScript中直接使用服務(wù)。因此,我們?cè)谀缓蟛粫?huì)對(duì)ASP.NET或者.NET運(yùn)行時(shí) 是如何管理這些功能的特性進(jìn)行探討。

為了演示文中涉及的理論與事實(shí),我們講創(chuàng)建一個(gè)帶有兩個(gè)工程的解決方案。因此,不浪費(fèi)時(shí)間了,開(kāi)始創(chuàng)建一個(gè)空白的解決方案并保存起 來(lái)。現(xiàn)在,添加一個(gè)新的類(lèi)庫(kù)項(xiàng)目到解決方案中。命名該類(lèi)庫(kù)為ServiceLibrary。然后,添加一個(gè)Web應(yīng)用程序工程到該解決方案中并命名為 WEBUI。后面我們將看到有兩種方式添加能夠讓JavaScript調(diào)用的WCF服務(wù)。

1.使用啟用AJAX的WCF服務(wù)項(xiàng)模板

2.在類(lèi)庫(kù)中使用服務(wù)接口定義

使用啟用AJAX的WCF服務(wù)項(xiàng)模板

這里,我們將看到一種簡(jiǎn)單明了的方式在JavaScript中調(diào)用一個(gè)WCF服務(wù) 。右鍵點(diǎn)擊Web應(yīng)用程序工程并選擇添加新項(xiàng)。選擇啟用AJAX的WCF服務(wù)項(xiàng)模板,并命名為“HelloWorldService.svc” 最后點(diǎn)擊確定。此時(shí), 向?qū)?huì)如愿添加一個(gè)HelloWorldService.svc文件到解決方案中。該文件也提供了代碼分離頁(yè)面。如果你在一個(gè)XML文件編輯器中打開(kāi)了該文件 ,你將看到如下形式的標(biāo)簽:

<%@ ServiceHost Language="C#" Debug="true"
Service="WebUI.HelloWorldService" CodeBehind="HelloWorldService.svc.cs" %>

如果你打開(kāi)后臺(tái)代碼文件,將看到如下形式的代碼:

namespace WebUI
{
[ServiceContract(Namespace = "")]
[AspNetCompatibilityRequirements(RequirementsMode =
AspNetCompatibilityRequirementsMode.Allowed)]
public class HelloWorldService
{
[OperationContract]
public void DoWork()
{
return;
}
}
}

VS 2008會(huì)自動(dòng)為你在web.config文件中添加一些必要的配置,因此不需要手工在web.config文件中添加任何配置?,F(xiàn)在,繼續(xù)并添加一個(gè) HelloWorld()方法,該方法返回一個(gè)“HelloWorld”的字符串并為該方法添加一個(gè)[OperationContract]特性。在本篇文章的后面我們將解釋該 特性。

現(xiàn)在,為Web應(yīng)用程序工程添加一個(gè)頁(yè)面并命名它為“HelloWorldTest.aspx”。從Visual Studio工具箱中拖拽一個(gè)Script Manager項(xiàng)到頁(yè) 面上。在ScriptManager 標(biāo)簽內(nèi)部,添加一個(gè)到該服務(wù)的引用。下面給出了該代碼示例:


   
       
   

現(xiàn)在,添加一個(gè)button按鈕和一個(gè)textbox文本框到頁(yè)面上,并為該按鈕添加點(diǎn)擊事件處理程序,以使用JavaScript函數(shù)來(lái)調(diào)用服務(wù)。當(dāng)你 編寫(xiě)服務(wù)調(diào)用函數(shù)時(shí),Visual Studio 2008 HTML編輯器將提供智能感知功能以方便編寫(xiě)必要的函數(shù)調(diào)用。完整的HTML代碼如下所示:



   
   
       
           
       

   

               onclick="GetValueFromServer()"; />
   

注意,當(dāng)調(diào)用服務(wù)時(shí),我們傳遞了兩個(gè)方法:一個(gè)用于進(jìn)行回調(diào)而另一個(gè)用于錯(cuò)誤回調(diào)。如果我們需要傳遞任何參數(shù)到該函數(shù)中,這些參數(shù) 會(huì)首先傳遞進(jìn)去然后再進(jìn)行回調(diào)。

因此,如果我們有一個(gè)名為getvalue 的函數(shù)并接收兩個(gè)字符串參數(shù),那么我們將以[NameSpaceName].[ServiceName].getvalue(“value one”,”value two”,on_success,on_error);的方式調(diào)用該函數(shù),此刻on_success和on_error各自表示回調(diào)和錯(cuò)誤回調(diào)。

【編輯推薦】

  1. 技術(shù)高手講評(píng)ASP.NET MVC 1.0
  2. ASP.NET十個(gè)有效性能優(yōu)化的方法
  3. 詳解AJAX在ASP.NET中的實(shí)現(xiàn)方式

分享標(biāo)題:使用ASP.NETAJAX調(diào)用WCF服務(wù)項(xiàng)模板
網(wǎng)頁(yè)地址:http://m.5511xx.com/article/djhsjed.html