建立.NET Web服務(轉)

來源:互聯網
上載者:User
web|web服務|建立 Web服務是構造分布式、模組化應用程式的最新技術發展趨勢。Web服務可以把商務邏輯劃分一個一個的組件,然後在整個網際網路的範圍上執行其功能。本文就是向讀者展示一個簡單的.NET Web服務建立過程。

假如你過去曾經構造過微軟世界的COM組件,那麼你對創造可重用對象中介層的概念應該是比較熟悉了,正是可重用對象可以讓開發人員重用代碼、利用由此帶來的軟體開發靈活性。這些組件能作為客戶應用程式放在同一電腦上執行,或者以DCOM的形式在分離的機器上執行。

現在的.NET體系則把以上的概念大大推進了一步,.NET允許你把組件放在遠端電腦上,而且你同這些遠端電腦之間僅存在HTTP串連;換句話說,這些遠程機器可能並不在商業網路內。由於SOAP協議的出現,DCOM的二進位標準也被基於文本和XML的調用文法代替了,新的技術標準允許客戶採用任何作業系統調用Web服務,而這些Web服務則運行在任何作業系統上。

用.NET打造Web服務
微軟早在大約兩年前就發布了針對Visual Basic 6的SOAP工具包,但是,.NET出現後則進一步把構造Web服務的任務變得更方便了。對Web服務的支援已經內建在了.NET基礎架構之內,這意味著任何.NET語言都能建立Web服務。Web服務甚至成為了Visual Studio.NET中的一種工程類型。就象大多數.NET工程類型一樣,你甚至能採用記事本這樣的文本編輯程式建立全部應用程式。

為了建立Web服務,你的開發電腦上至少需要安裝了ASP.NET引擎。這種引擎屬於.NET架構和Visual Studio.NET的一部分。如果你手頭沒有ASP.NET引擎,那麼你不妨從asp.net網站下載ASP.NET。下載軟體只能在Windows 2000和Windows XP上使用。安裝了ASP.NET之後,你要不建立一個虛擬目錄要不直接在inetpub\wwwroot目錄下建立自己的檔案,我舉的例子就用後面的方法。

最近看過倫敦一家公司的網站,他們網頁上的價格單位是英磅。頁面上有一個轉換工具允許你把英鎊換算為美元。這個轉換工具就是一個絕佳的Web服務執行個體。現在就請開啟記事本程式準備建立XML Web服務吧。

建立Web服務的第一步是標識Web服務、說明服務使用的語言同時建立的類的名字。在這個例子中,採用的Web服務程式設計語言是Visual Basic.NET,類的名字是ConvertMoney。你的第一行代碼如下所示:

<%@ WebService Language=”VB” Class=”ConvertMoney” %>


接著,採用Imports聲明匯入System.Web.Services名稱空間。這樣做才能讓你按照名字索引WebService等類而無須索引整個名稱空間。該行代碼如下所示:
Imports System.Web.Services

然後建立Web服務自身的shell。WebService類在你自己的類的名字前加上首碼,代碼如下:


<WebService()>Public Class ConvertMoney
‘ code will go here
End Class


到這一步幾乎就可以增加類的功能了,但是你還得先增加一行關鍵代碼。你必須繼承WebService基類,這是.NET架構的一部分。這樣做所實現的功能令你的服務類可以被任何Internet客戶調用。增加Inherits聲明之後,所有的代碼如下所示。


<%@ WebService Language=”VB” Class=”ConvertMoney” %>
Imports System.Web.Services
<WebService()>Public Class ConvertMoney
   Inherits WebService
   ‘ code will go here
End Class
現在就可以給你的類添加功能了。在這裡,你建立了一個簡單函數接受英鎊的貨幣量然後返回美元值。通常,你還應該在資料庫內找到兩種貨幣之間的交換匯率。在上面的例子裡,你在代碼中直接把匯率設定為1英鎊可兌換1.44美元。在以上代碼塊中增加代碼之後全部Web服務代碼如下所示。
<%@ WebService Language=”VB” Class=”ConvertMoney” %>
  Imports System.Web.Services
  <WebService()>Public Class ConvertMoney
    Inherits WebService
  <WebMethod()>Public Function _
    PoundsToDollars(BritishPounds As Double) As Double
    Return BritishPounds * 1.44
  End Function
End Class

代碼編寫完畢,你把代碼檔案存放在某個虛擬目錄下(通常是c:\inetpub\wwwroot)即可。把檔案儲存為Converter.asmx。ASMX副檔名是.NET Web服務的標記。儲存檔案之後,你的Web服務就準備露臉了。



相關文章

E-Commerce Solutions

Leverage the same tools powering the Alibaba Ecosystem

Learn more >

11.11 Big Sale for Cloud

Get Unbeatable Offers with up to 90% Off,Oct.24-Nov.13 (UTC+8)

Get It Now >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

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

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