中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ASP.NET怎么構造XML Web服務

發布時間:2021-12-06 13:36:44 來源:億速云 閱讀:115 作者:iii 欄目:編程語言

本篇內容主要講解“ASP.NET怎么構造XML Web服務”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“ASP.NET怎么構造XML Web服務”吧!

使用ASP.NET構造一個簡單的XML Web服務是相對容易的,然而,XML Web服務的真正的強大的功能只有等你研究了基礎結構以后才能領悟。XML Web服務是建立在.NET框架和公共語言運行時間基礎上的。一個XML Web服務可以利用這些技術。例如,ASP.NET支持的性能、狀態管理和驗證全都可被用來構造XML Web服務。

XML Web服務的基礎結構是構建來符合象SOAP、XML和WSDL這樣的行業標準,并且它允許其他的平臺的客戶端與XML Web服務互操作。只要一個客戶端可以發送符合標準的SOAP消息、依據格式化的服務描述,那么這個客戶端可以調用一個使用ASP.NET創建的XML Web服務(不管客戶端存在于何種平臺)。

當你使用ASP.NET構造一個XML Web服務時,它自動支持客戶端使用SOAP、HTTP-GET和HTTP-POST協議通訊。即使HTTP-GET和HTTP-POST支持使用URL編碼的變量名/變量值對來傳送消息,支持這兩個協議的數據類型也沒有支持SOAP協議的數據類型豐富。在SOAP中,使用XML把數據傳送到XML Web服務或從XML Web服務取回消息,你可以使用支持豐富的數據類型集的XSD模式定義復雜的數據類型。使用ASP.NET構造一個XML Web服務的開發者不必明確地定義復雜的數據類型。他們可以只構造一個管理類。ASP.NET處理定義到一個XSD模式的映射類和到XML數據的映射對象實例,以便通過網絡傳輸。

重要的是要注意XML Web服務并不能取代DCOM,我們應該說XML Web服務是跨越使用行業標準的平臺通信的一種消息傳遞基礎結構。

因為ASP.NET提供了為XML Web服務內部工作的基礎結構,開發者可以集中精力來實現他們的特定的XML Web服務的功能。使用ASP.NET開發一個XML Web服務從下面三步開始:

1. 創建一個帶有.asmx擴展名的文件。

2. 在這個文件里面,使用一條指令聲明XML Web服務。

3. 定義組成XML Web服務功能的XML Web服務方法。

XML Web服務是一個強大的技術,用于提供可通過因特網變成訪問的服務。下面的建議將幫助你創建高效的XML Web服務:

XML Web服務既支持同步的又支持異步的客戶端和存放XML Web服務的服務器之間的通信。在同步通信情況下,客戶端發送一個對服務的請求到服務主機服務器上等待響應。這防止客戶端在等待結果的時候,執行其它的操作。然而異步通信導致客戶端在等待相應的時候繼續處理其它的任務。客戶端在可用的時候響應服務請求的結果。

當你使用Web服務描述語言工具(Wsdl.exe)來創建你的代理類的時候,它產生類中的方法的標準的、同步版本和異步版本。異步版本由兩個方法組成,稱為Begin和End。Begin方法用于初始化XML Web服務,而End方法取得結果。

使用異步通信能夠改善系統使用率和避免客戶端在它等待XML Web服務結果的時候的延遲。

下面的代碼示例顯示如何從一個客戶應用程序產生一個到XML Web服務

<%@PageLanguage="C#"%> <%@ImportNamespace="System.Net"%> <html> <scriptlanguagescriptlanguage="C#"runat="server"> voidEnterBtn_Click(ObjectSrc,EventArgsE)  {  MyMath.Mathmath=newMyMath.Math();  //CalltoAddXMLWebservicemethodasynchronously  //andthenwaitforittocomplete.  IAsyncResultresult=  math.BeginAdd(Convert.ToInt32(Num1.Text),  Convert.ToInt32(Num2.Text),  null,  null);  //Waitforasynchronouscalltocomplete.  result.AsyncWaitHandle.WaitOne();  //CompletetheasynchronouscalltoAddXMLWebservicemethod.  floattotal=math.EndAdd(result);  //DisplayresultsinaLabelcontrol.  Total.Text="Total:"+total.ToString();  }  </script> <body> <formactionformaction="MathClient.aspx"runat=server> <fontfacefontface="Verdana"> Enterthetwonumbersyouwanttoaddandthenpress  theTotalbutton.  <p> Number1:  <asp:textboxidasp:textboxid="Num1" runat=server/> +  Number2:  <asp:textboxidasp:textboxid="Num2" runat=server/> =  <asp:buttonidasp:buttonid="Total_Button" text="Total" OnClick="EnterBtn_Click" runat=server/> <p> <asp:labelidasp:labelid="Total"runat=server/> </font> </form> </body> </html> [VisualBasic]  <%@PageLanguage="VB"%> <%@ImportNamespace="System.Net"%> <html> <scriptlanguagescriptlanguage="VB"runat="server"> SubEnterBtn_Click(SrcAsObject,EAsEventArgs)  DimmathAsNewMyMath.Math()  'CalltoAddXMLWebservicemethodasynchronously  'andthenwaitforittocomplete.  DimresultAsIAsyncResult=_ math.BeginAdd(Convert.ToInt32(Num1.Text),_  Convert.ToInt32(Num2.Text),_  Nothing,_  Nothing)   'Waitforasynchronouscalltocomplete.  result.AsyncWaitHandle.WaitOne()  'CompletetheasynchronouscalltoAddXMLWebservicemethod.  DimaddtotalAsSingle=math.EndAdd(result)  'DisplayresultsinaLabelcontrol.  Total.Text="Total:"&addtotal.ToString()  EndSub  </script> <body> <formactionformaction="MathClient.aspx"runat=server> <fontfacefontface="Verdana"> Enterthetwonumbersyouwanttoaddandthenpress  theTotalbutton.  <p> Number1:  <asp:textboxidasp:textboxid="Num1" runat=server/> +  Number2:  <asp:textboxidasp:textboxid="Num2" runat=server/> =  <asp:buttonidasp:buttonid="Total_Button" text="Total" OnClick="EnterBtn_Click" runat=server/> <p> <asp:labelidasp:labelid="Total"runat=server/> </font> </form> </body> </html>

到此,相信大家對“ASP.NET怎么構造XML Web服務”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

铜梁县| 德清县| 固安县| 礼泉县| 黔东| 城口县| 泾川县| 广西| 永胜县| 广汉市| 弥渡县| 深泽县| 乐都县| 安岳县| 驻马店市| 永新县| 鄯善县| 响水县| 平安县| 胶南市| 北京市| 嘉善县| 巫山县| 大荔县| 会宁县| 即墨市| 宜章县| 木里| 镇江市| 浦江县| 新余市| 明光市| 祁门县| 绍兴市| 望奎县| 涞水县| 阿勒泰市| 香格里拉县| 黄梅县| 泰安市| 东乡族自治县|