C# 建立、部署和調用WebService的簡單示例

webservice 能夠用於分佈式應用程序之間的交互,和不一樣程序之間的交互。web

概念性的東西就不說太多,下面開始建立一個簡單的webservice的例子。這裏我用的是Visual Studio 2015開發工具。windows

首先建立一個空的Web應用程序。安全

而後鼠標右鍵點擊項目,選擇 添加>新建項。服務器

選擇Web服務,點擊添加。一個簡單的webservice就建立完成了,接下來編寫兩個簡單的方法。網絡

PS:若是方法須要經過webservice的地址進行調用,那就必須在方法上面打上 [WebMethod] 的特性標籤,不然是沒法經過webservice訪問到的。Description 是方法的描述。分佈式

 

而後運行一下,就能夠看到上圖的方法了,訪問 webservice 就能夠根據地址欄裏的地址進行調用 webservice 的方法了。工具

 

可是這樣如何讓其餘應用程序經過網絡進行訪問呢?那就須要部署到服務器了。開發工具

下面的演示我是部署在本機的,不過服務器部署也是同樣的。網站部署須要用到 IIS,而我這裏是已經開啓的,若是沒有開啓的話,能夠經過 開始菜單 > 控制面板 > 程序 > 啓用或關閉 windows 功能 開啓。具體的能夠網上搜索一下,這裏就不作過多的介紹。測試

 

開啓 IIS 以後,先把剛纔的 webservice 發佈以後,而後打開 IIS 管理器。網站

選擇自定義,而後輸入配置文件名稱,而後點擊下一步。

而後選擇發佈的方式和發佈的路徑,而後點擊下一步。

設置不用改,繼續下一步。而後點擊發布。

這樣就發佈完成了,如今打開 IIS 管理器,而後選擇網站,點擊添加網站。

輸入網站的名稱、IP地址(本機能夠不輸入IP地址)和端口,選擇文件的路徑,而後點擊肯定,網站就建立完成了。

 

固然,並不必定就立馬可使用了,這之中會出現不少的錯誤,下面是我碰到的一些錯誤和一些解決方法。

這個錯誤是由於文件的訪問權限不夠的問題。解決方法就是點擊編輯權限。

而後選擇安全欄,點擊編輯。

而後點擊添加一個用戶,把權限設置爲容許。或者使用下面這種方法:

選擇網站,而後選中身份驗證,點擊基本設置。

選擇鏈接爲。

而後選擇特定用戶,點擊設置,輸入本機的用戶名和密碼,點擊肯定就能夠了。而後能夠點擊測試設置看看效果。

 

這個錯誤的緣由是在安裝Framework v4.0以後,再啓用IIS,致使Framework沒有徹底安裝。

解決方法就是:開始菜單 > 命令提示符(管理員),而後輸入並執行   %windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i   命令行。

 

這個問題的是由於,應用程序池設置的緣由,開始新建網站的時候沒有選擇應用程序池,默認爲v2.0的版本,不支持 Framework 4.5。

解決方法就是選擇應用程序池,而後改成v4.0的版本,管道模式設置爲集成。

 

這個錯誤的緣由是因爲系統目錄下的Temp目錄無相應的權限所致。

解決方法就是進入 C盤 windows 目錄下的 Temp 目錄,右鍵屬性 >  安全欄 > 編輯 > IIS_IUSRS 的權限設置爲徹底控制。

 

這個錯誤的緣由是由於沒有配置網站的默認文檔。

解決方法就是選中網站,點擊默認文檔,而後添加一個默認的頁面,即應用程序的起始頁面。

 

而後,處理了衆多問題以後,總算是部署成功了。

 

接下來,就來個簡單的 webservice 的調用示例。

先添加一個控制檯應用程序,而後右鍵引用,選擇添加服務引用。

點擊高級,而後在彈出來的頁面點擊 添加web引用。

 

在URL欄輸入部署的網站地址,而後點擊轉到,就能夠看到下面的方法內容了,而後輸入web引用名稱,點擊添加引用。

引用添加完成,下面就開始調用webservice。

結果以下:

相關文章
相關標籤/搜索