共用方式為


HOW TO:建立 Windows Communication Foundation 用戶端

這是在建立基本 Windows Communication Foundation (WCF) 服務以及可呼叫該服務的用戶端時,必須進行的六個工作中的第四個。如需這六個工作的概觀,請參閱使用者入門教學課程主題。

本主題會說明如何從 WCF 服務擷取中繼資料,以建立可以存取服務的 WCF Proxy。這個工作是透過 WCF 所提供的 ServiceModel Metadata Utility Tool (Svcutil.exe) 來完成。這個工具會從服務取得中繼資料,並以您所選擇的語言產生 Proxy 的 Managed 原始程式碼檔。除了建立用戶端 Proxy,此工具也會建立用戶端的組態檔,讓用戶端應用程式在其中一個端點與服務連線。

用戶端應用程式會使用所產生的 Proxy 來建立 WCF 用戶端物件。這個程序會於 HOW TO:使用 Windows Communication Foundation 用戶端中說明。

此程序之後的範例將提供這項工作所產生的用戶端程式碼。

若要建立 Windows Communication Foundation 用戶端

  1. 透過下列步驟,在 用戶端的目前方案內建立新的專案:

    1. 在包含服務的相同方案內的 [方案總管] (位於右上方) 中,以滑鼠右鍵按一下目前方案 (而非專案),然後選取 [加入] 和 [新增專案]。
    2. 選取 [加入新的專案] 對話中的 [Visual Basic] 或 [Visual C#],然後選擇 [主控台應用程式] 範本,並將其命名為 Client。使用預設的 [位置]。
    3. 按一下 [確定]。
  2. 為專案加入 System.ServiceModel.dll 的參考:

    1. 在 [方案總管] 中,以滑鼠右鍵按一下 [Client] 專案下方的 [參考] 資料夾,然後選取 [加入參考]。
    2. 選取 [最近使用的] 索引標籤,從清單方塊中選取 [System.ServiceModel.dll],然後按一下 [確定]。因為您已經在此教學課程的第一個步驟中加入這個組件的參考,所以它現在會列在 [最近使用的] 索引標籤中。如果在 [最近使用的] 索引標籤中看不到這個組件,請選取 [ 瀏覽] 索引標籤並巡覽至 C:\Windows\Microsoft.NET\Framework\v3.0\Windows Communication Foundation,然後從那裡選取該組件。
    ms733133.note(zh-tw,VS.90).gif注意:
    使用命令列編譯器時 (例如,Csc.exe 或 Vbc.exe),必須同時提供組件的路徑。依照預設,以執行 Windows Vista 的電腦為例,路徑為:Windows\Microsoft.NET\Framework\v3.0\Windows Communication Foundation。

  3. 在產生的 Program.cs 或 Program.vb 檔案中,加入 System.ServiceModel 命名空間的 using 陳述式 (在 Visual Basic 中為 Imports)。

    Imports System.ServiceModel;
    
    using System.ServiceModel;
    
  4. 啟動先前步驟中建立的服務。如需詳細資訊,請參閱 HOW TO:裝載和執行基本 Windows Communication Foundation 服務

  5. 執行下列步驟並使用適當的參數來執行Service Model Metadata Utility Tool (SvcUtil.exe) 以建立用戶端程式碼與組態檔:

    1. 選取 [開始] 功能表中 [Microsoft Windows SDK] 項目底下的 [CMD 殼層],啟動 Windows SDK 主控台工作階段。

    2. 巡覽至您要放置用戶端程式碼的目錄。如果您是使用預設值來建立用戶端專案,則目錄為 C:\Users\<user name>\Documents\Visual Studio 2005\Projects\Service\Client。

    3. 請使用命令列工具 Service Model Metadata Utility Tool (SvcUtil.exe) 並搭配適當的參數來建立用戶端程式碼。下列範例會產生服務的程式碼檔案與組態檔。
      [Visual Basic]

      svcutil.exe /language:vb /out:generatedProxy.vb /config:app.config https://localhost:8000/ServiceModelSamples/service
      

      [C#]

      svcutil.exe /language:cs /out:generatedProxy.cs /config:app.config https://localhost:8000/ServiceModelSamples/service
      

      根據預設,用戶端 Proxy 程式碼是在以服務為名的檔案中產生的 (例如,在本案例中為 CalculatorService.cs 或 CalculatorService.vb,其中副檔名適合程式設計語言者:Visual Basic 為 .vb 而 C# 則為 .cs)。/out 參數會將用戶端 Proxy 檔案的名稱變更為 generatedProxy.cs。/config 參數會將用戶端組態檔的名稱從預設的 output.config 變更為 app.config。請注意,這兩個檔案都是在 C:\Users\<user name>\Documents\Visual Studio 2005\Projects\Service\Client 目錄中產生的。

  6. 將產生的 Proxy 加入至 Visual Studio 中的用戶端專案,以滑鼠右鍵按一下 [方案總管] 中的用戶端專案,然後選取 [加入] 和 [現有項目]。選取在前述步驟中產生的 generatedProxy.cs 檔案。

範例

此範例說明 Service Model Metadata Utility Tool (Svcutil.exe) 所產生的用戶端程式碼。

現在您已經建立一個 Windows Communication Foundation (WCF) 用戶端。請繼續進行 HOW TO:設定基本 Windows Communication Foundation 用戶端來設定用戶端。如需疑難排解的詳細資訊,請參閱使用者入門教學課程疑難排解

請參閱

工作

HOW TO:使用組態檔發行服務的中繼資料
HOW TO:使用 Svcutil.exe 來下載中繼資料文件

其他資源

Service Model Metadata Utility Tool (Svcutil.exe)
Getting Started Sample
Self-Host