2008-10-24 82 views
6

當引用的.NET Framework 2.0組件試圖執行的一個IIS以下代碼行我接收到錯誤承載WCF服務:WCF和System.Configuration命名空間

錯誤消息:

exePath必須在不支持 的獨立exe文件中指定。

源代碼:

ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); 

有沒有人遇到過這個問題,他們知道如何解決它?

編輯:我的問題是,從與.NET 2.0程序集向後兼容的WCF服務中打開配置文件(app.config和web.config)的最佳方式是什麼?

回答

3

我能夠從我的頁首頁上頁答案去除現有的代碼,並與替換它來解決配置問題以下ConfigurationManager實現:

string MySetting = ConfigurationManager.AppSettings.Get("MyAppSetting"); 

如果適用於ASP.NET應用程序,WinForms應用程序和WCF服務。我剛剛過度設計了3年前我的班級圖書館的初始實施......

1

這取決於你想要完成什麼。在ASP.NET上,您通常不會像這樣使用ConfigurationManager,而是使用WebConfigurationManager。也就是說,沒有確切的等價物,因爲實際上,OpenExeConfiguration所允許的用戶/漫遊/等等東西在Web應用程序中是沒有意義的。

你需要什麼?

5

引用的.NET 2.0程序集是我爲我們的企業庫開發的用於處理常見任務的類庫的一部分。它旨在用於ASP.NET和WinForm應用程序。

這裏是我用來決定打開哪種類型的配置文件的源代碼:

//Open app.config or web.config file 
if (HttpContext.Current != null) 
    this.m_ConfigFile = WebConfigurationManager.OpenWebConfiguration("~"); 
else 
    this.m_ConfigFile = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);