2011-11-03 102 views
0

我一直在使用已經部署到具有IIS的各種計算機的大約12個WCF服務。所有綁定/配置都保存在通常的「web.config」文件中,該文件是爲了保持服務更加可配置並保持服務代碼本身更加清潔而創建的。不過,我最近剛剛負責創建一個Windows服務來承載這些WCF服務。我擁有的一個問題是,我只是將web.config文件中的所有設置複製到Windows服務的App.config文件中?或者我需要重新配置所有的端點/綁定/等。在App.config文件中使用不同的格式?我以前從未創建過Windows服務,但在創建Windows服務主機後,並未100%確定需要進行安裝。提前致謝。將WCF服務Web.config移植到Windows服務App.config

回答

1

web.config中的WCF配置元素應直接轉換爲app.config。過去我剪切和粘貼了web.config元素。唯一需要注意的是web.config和app.config都不像某些元素重複,所以如果你要合併來自多個web.config文件的配置數據,你必須確保你不重複段那應該只存在一次。

1

我一直認爲.NET配置模型不適合WCF服務配置。

有一種方法可以教WCF從替代位置檢索其配置。我喜歡設置它以便WCF服務從ServiceName.config而不是web.configAppName.exe.config檢索其配置信息。這解決了哈珀謝爾比提到的重複元素的問題。

Here's a full explanation and some code.

使用定製服務主機,移動從IIS的WCF服務的自託管模式是非常簡單的。

另請參閱,WCF Configuration - Split it out of app.config