2012-09-24 13 views
1

我在C#Visual Studio 2010中使用WCF創建服務REST類型。該服務收到一個JSON文件,然後用另一個JSON回覆。我已經構建了一個Windows Forms應用程序,並通過創建一個通道來使服務工作。我只是通過POST發送JSON,並獲取內容。我想將應用程序綁定爲Windows服務(控制面板中的服務)。因此,我創建了一個WCF服務應用程序,但是當我調試它時,它會打開WCF測試客戶端實用程序,但由於它要求元數據而失敗。但是,因爲我使用的是REST架構,所以我不認爲我需要使用元數據,因爲我甚至不想公開服務,我只是想知道服務的用戶使用它們。所以,我的問題更像是如何調試WCF服務REST類型,而不必使用元數據?對我來說,創建客戶端擁有自己的,然後把服務放在Windows服務不是很好的想法,因爲它需要很長時間來安裝/卸載。如何調試WCF服務REST類型,而不必使用元數據?

問候

回答

2

我的選擇是把WCF服務庫中,進行單獨的簡單的控制檯應用程序,self-host the service一個控制檯應用程序中。這使得調試非常簡單。當你想使它成爲服務(在服務中)時,你可以創建一個Windows服務項目,並引用服務庫並將其託管在Windows服務應用程序中。

1

你是對的,WcfTestClient不適用於WCF REST服務。有很多方法可以做到這一點:可以使用Fiddler(而不是WcfTestClient);你可以像你說的那樣創建自己的客戶端;你可以在測試中使用任何HttpClient ...

關於必須安裝/卸載Windows服務的問題:除非您對Windows服務環境(例如用戶帳戶)有任何依賴性,否則出於測試目的可以在與測試運行相同的過程中自行託管您的服務。對於大多數情況下的服務邏輯本身來說,這應該足夠好。