2011-12-30 53 views
2

我有一個n層應用程序。服務(後端)部分需要有配置文件,客戶端部分需要有自己的配置文件。通常,客戶端通過WCF與服務進行通信。但是,對於某些測試,我會在客戶端引用服務程序集並繞過WCF。以這種方式使一些測試更容易。ConfigurationManager.OpenExeConfiguration - 指定要打開的文件

我的問題是這樣的。當我以這種方式運行我的客戶端時,在我的服務程序集中使用的app.config是客戶端的配置文件,而不是它自己的配置文件。有沒有辦法告訴ConfigurationManager使用我的服務程序集配置文件,而不是客戶端配置文件,當我這樣工作?

+0

你見過這個問題嗎? http://stackoverflow.com/questions/471042/wrong-app-config-being-loaded – 2011-12-30 14:54:28

回答

-1

這聽起來像你需要更好的代碼隔離,如果你想通過繞過WCF來測試事情。你最好的選擇是構建一個沒有WCF依賴的服務庫並測試它。一旦您對服務庫的測試感到滿意,請使用WCF包裝器公開服務庫。您必須在WCF操作合同中包含代碼。我試圖讓他們分開測試,因爲它看起來也是你的目標。

更好的方法是隻添加一個帶有對服務庫和單獨配置文件的項目引用的測試項目。

0

當您在測試中運行時,visual studio會執行一些魔術並加載服務器配置。一旦添加引用並運行客戶端,它就會執行加載exe配置(在這種情況下爲客戶端)的正常行爲。

相關問題