2010-12-29 8 views
-2

私はapp1.configを持つクラスライブラリとapp2.configを持つWindowsアプリケーションを持っています;私はWindowsアプリケーションとapp1.config.isでclasslibraryの参照を追加しています。メソッドクラスlibはapp1.configに行き、それ以外の場合はapp2.configを使います。App.configの問題

+1

[クラスライブラリでapp.configを使用する](http://stackoverflow.com/questions/690313/using-app-config-with-a-class-library)と他にもたくさんの質問があります - 同じ質問のgazillionth繰り返しを投稿する前に、まず** SEARCH **をしてください! –

+1

またはこれを複製:http://stackoverflow.com/questions/4277635/reading-an-app-config-in-class-library –

+1

またはこれを複製してください:http://stackoverflow.com/questions/2548726/connection -string-in-app-config-in-a-class-libraryまたはこれは:http://stackoverflow.com/questions/2946614/why-is-this-class-library-dll-not-getting-information-from -app-config –

答えて

0

あなたが達成できる最良のものは、2つの別々の設定ファイルを持っていることです。そして、1つのメソッドのコードが(普通のConfigurationManager.AppSetting[""]コードを使って) "main"設定ファイルを読み込み、このようなコード:

Configuration config = ConfigurationManager.OpenExeConfiguration(dllFilePath); 
KeyValueConfigurationElement element = config.AppSettings.Settings[appSettingKey]; 
string value = element.Value; 

これはdllFilePathの場所に座っているDLLのconfigファイルからアプリケーション設定を読み込みます。

「メイン」設定ファイルにクラスライブラリのセクションを別に置くこともできます。関連する場合は、サンプルも提供できます。

0

デフォルトのConfigurationManagerプロセスを使用して設定ファイルにアクセスすると、アプリケーション用に設定されたファイルが使用されます。クラスライブラリとアプリケーションの設定を区別する方法はありません。

たとえば、MyWonderfulApp.exeと呼ばれるWindows/WPFアプリケーションがある場合、使用される設定ファイルはMyWonderfulApp.exe.configだけです。したがって、すべての設定はそのファイル内にあります。 Webアプリケーションはweb.configファイルのみを使用します。

関連する問題