WebService有兩種使用方式,一種是直接通過添加服務引用,另一種則是通過WSDL生成。 添加服務引用大家基本都用過,這裡就不講解了。 那麼,既然有直接引用的方式,為什麼還要通過WSDL生成呢? 因為通過WSDL生成,就隻有一個.cs 檔案,便于管理,更簡潔。
一、生成步驟
1. 打開vs開發控制台, 如下圖:

2. 在控制台中輸入如下指令
wsdl /language:c# /n:Demo /out:d:/TestService.cs http://www.abc.com/webservice/test?wsdl
參數說明如下
/language:C# 指定程式設計語言為 C#
/n:Demo 指定名稱空間為 Demo
/out: 指定檔案儲存路徑和檔案名 d:/TestService.cs
http://www.abc.com/webservice/test?wsdl 為wsdl檔案路徑,也可以是實體路徑(如:C:/test.wsdl)
3. 指令輸入完成之後,按回車,執行成功如下圖所示,此時去F盤就能找到一個生成的TestService.cs類檔案了
二、将wsdl.exe配置在vs工具菜單中
由于每次打開vs開發控制台,并輸入一長串的指令會比較麻煩,是以為了提高效率,我們将其配置在工具菜單中,讓使用更友善。
配置步驟:
1. 打開vs -> 工具菜單 -> 外部工具
2. 點選添加,詳細配置如下圖
說明:
a. 指令填寫的是wsdl.exe程式在電腦中的路徑 C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools\wsdl.exe
b. 參數和上面講的一緻,不再贅述
c. 初始目錄,選擇 [項目錄]。 項目錄的作用就是,當你選中解決方案中的某個檔案夾,那麼生成的類檔案就會儲存在你選中的檔案夾下,如果選中的是檔案,則生成的類檔案儲存在和所選檔案同級目錄下。
3. 點選應用按鈕,配置完成。
配置完要如何使用呢?配置完後,點選工具菜單,會看到如下圖:
點選 WEBSERVICE生成工具,出現如下圖
我們把 "命名空間" 換成自己真實想要的名稱空間,我這裡寫Test,然後在 /out: 後面敲一個空格(記住一定要空格),之後填寫wsdl檔案路徑(可以是實體路徑也可以是網絡路徑)。完成後如下圖
點選确定就可以了,在vs底部的輸出視窗中可以看到詳細資訊。