WCF測試客戶端(WCF Test Client)是一個用來測試WCF服務程序的調試工具,能夠使開發(fā)WCF服務更加方便。 本文主要討論如何在Visual Studio中啟用WCF測試客戶端的相關技巧。 在Visual Studio之外打開WCF測試客戶端有兩種方法:第一種方法是到其所在路徑(Visual Studio安裝路徑\Common7\IDE\WcfTestClient.exe)雙擊打開。第二種方法是在“Visual Studio命令提示(Visual Studio Command Prompt)”中輸入“WcfTestClient”命令,如圖1所示: 圖1
Visual Studio不同的項目模板,提供了不同的WCF測試客戶端啟動方法。下面這張表格是Visual Studio 2010 Beta2中,與WCF相關的項目模板:
表1
WCF服務庫、WF順序服務、WF狀態(tài)機服務: 啟用調試(F5)默認會啟動WCF服務主機(WCF Service Host)托管項目中的服務,并且會自動啟用WCF測試客戶端,請看圖2: 圖2 如果希望F5時,不啟動WCF測試客戶端,可以通過修改項目屬性 -> 調試 -> 命令行參數來實現,如圖3所示: 圖3
WCF服務應用程序、WCF工作流服務應用程序: 當在“解決方案資源管理器(Solution Explorer)”中,焦點選定在特定服務的.svc或.xamlx文件時,F5會啟動WCF測試客戶端。請看圖4: 圖4 如果希望F5時始終啟動IE,可以在.csproj.user文件里增加EnableWcfTestClientForSVC屬性配置以禁用WCF測試客戶端:
另外,在.csproj文件里還有EnableWcfTestClientForSVC屬性的默認值設置。如果.csproj.user文件沒有該屬性的相關設置,則該屬性則使用.csproj文件里默認值:
下表是.csproj.user和.csproj文件相關屬性的設置和啟動客戶端類型的邏輯關系:
表2
例如,在一個利用源代碼控制的項目組中,.csproj.user文件不會被共享,而.csproj文件會被共享。如果只希望改變個人的WCF測試客戶端的啟動行為,則應該修改.csproj.user文件;如果希望改變開發(fā)這個項目的所有人的啟動行為,則應修改.csproj文件。
聯合服務庫: WCF測試客戶端并不能對這種服務項目進行測試,所以F5時并不會自動啟動WCF測試客戶端。
WCF服務(網站): F5時不會自動啟動WCF測試客戶端。如果希望獲得和WCF服務應用程序相同的啟動行為,可以修改C:\Users\<username>\AppData\Local\Microsoft\WebsiteCache\websites.xml文件(XP/2003系統中文件在相似位置):
注意在修改websites.xml文件之前請先關閉Visual Studio,否則Visual Studio關閉時會重寫覆蓋websites.xml文件。 |
|