簡介:
         網路服務可以說是一種特殊的網站,它沒有可見的網頁畫面,但是裡面可以寫一些Function函數,經過設定網路參考,回答一些問題或提供一些計算或資料處理的服務。本單元會以一個簡單的價目表詢問為例,製作一個簡單的網路服務網頁程式。

建立資料庫
開一個ASP.NET網站做一張這樣的SQL資料表。

商品設為主索引鍵,資料表命名為價目表,輸入資料如下:


建立網路服務程式
在網站加入新項目:Web服務如下:

新增的是一個檔名為:WebService.asmx的檔案,初始程式碼頁面如下:

我們的對外程式功能就要寫在WebMethod後面的Function內,但是因為需要用到資料庫,還必須多匯入兩個命名空間,再將Function寫成可以依據資料庫資料回答價格(Price)的程式:

執行這個網頁程式畫面如下:

先不必管下面的長串說明,點選上面那個Price超連結就是測試執行我們寫的程式,畫面如下:

回應是:

這是一小段XML語句,對於呼叫網頁有意義的就是粗黑字的100,也就是詢問牛肉麵的價格。至此本網路服務的自我測試已經成功,它確實可以回答商品價格。

設定網路服務
網路服務是必須被網站叫用的,所以必須在網站中設定要用這個網頁的服務,其實就是找到它執行時的網址,回到剛剛執行WebService.asmx的網址列,將網址拷貝下來,老師測試時這樣的:
http://localhost:55624/WebService/WebService.asmx
當然虛擬伺服器狀況每次的Port值(55624)會不太一樣,你必須拷貝自己的網址。
接下來到功能表加入服務參考:

選進階

加入 Web 參考

把剛剛的網址貼入URL按下綠色箭頭:

出現如下畫面時按加入參考即可

方案總管內容會有些變化

經過這樣設定,你的網站內的程式就可以呼叫這服務了!

建立網頁測試
請製作一個這樣的ASPX網頁:

一個TextBox,一個Button,一個Label,我們希望在前面輸入商品,按鍵後Label出現價格,程式如下:

執行ASPX問牛肉麵多少錢,真的是100元!


設定實體網路服務
上面範例的網路服務在自己的網站裡面好像不太真實(這樣寫也沒必要),理論上只要找到某個Web Service網頁的網址,如前面設定網路服務的方式輸入網址就可以使用了!但是目前老師還沒找到可以測試的免費的網路服務網址(通常是要付費的),想在自己的伺服器安裝一個服務也因為某些設定搞不定尚未成功。本單元就先這樣告一段落了!