2012-02-13 22 views
0

サブプロジェクトに複数のカスタム構成セクションを作成して相互に追加する方法があるかどうかを知りたいですか?例えばカスタム設定セクションをインポートする方法はありますか?

、プロジェクト構造を考慮してください。

Solution\ 
    MainGUI\ 
     App.config 
     Settings\ 
     MainGUISettings.cs 
    PrintingLibrary\ 
     App.config 
     Settings\ 
     PrintingSettings.cs 
    SocketLibrary\ 
     App.config 
     Settings\ 
     SocketSettings.cs 
    DatabaseAccessLibrary\ 
     App.config 
     Settings\ 
     DatabaseAccessSettings.cs 
    PrintingUnitTest\ 
     App.config 
     Settings\ 
     PrintingUnitSettings.cs 

各プロジェクトは、それぞれのタスクのために特別な設定が含まれているApp.configファイルを持っています。たとえば、PrintingLibraryには、PrintingSettingsカスタム構成セクションを含むApp.configが含まれています。 SocketLibraryには、SocketSettingsカスタム構成セクションを含むApp.configが含まれています。 DatabaseAccessLibraryには、DatabaseAccessSettingsカスタム構成セクションが含まれているApp.configが含まれています。

MainGUIには、主要なGUI設定と各ライブラリのカスタム構成セクションの「インポートタグ」を含むApp.configが含まれています。 MainGUIプロジェクトのApp.configソースを見ると、PrinterSettings、SocketSettings、およびDatabaseAccessSettingsセクションは単に "インポートコード"ですが、MainGUIをビルドすると、生成されたMainGUI.exe.configファイルには3つのサブセクションがすべて含まれます。

もし私がPrintingUnitTestをビルドすれば、PrinterSettingsカスタムセクションもインポートされます。それでは、これを行う方法がありますか?

これは、MainGUIプロジェクトのApp.configにすべてのカスタム設定セクションを置き、UnitTestプロジェクトのApp.configに必要なセクションをコピーするだけです。

答えて

1

これを実現する方法はありません.WCFなどの稀な条件の場合を除き、app.configをライブラリプロジェクト内に配置しないでください。すべての設定は、実行可能プロジェクトのapp.configに移動する必要があります。これは、System.Configuration.ConfigurationManagerが気にする場所です。

関連する問題