2012-02-13 76 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包含一個App.config,其中包含一個PrintingSettings自定義配置部分。 SocketLibrary包含一個包含SocketSettings自定義配置部分的App.config。 DatabaseAccessLibrary包含一個App.config,其中包含一個DatabaseAccessSettings自定義配置部分。

MainGUI包含一個App.config,其中包含主GUI設置以及每個庫的自定義配置節的「導入標籤」。在查看MainGUI項目的App.config源文件時,PrinterSettings,SocketSettings和DatabaseAccessSettings部分僅僅是「導入代碼」,但是當您構建MainGUI時,生成的MainGUI.exe.config文件包含所有三個子部分。

如果我構建PrintingUnitTest,它也會導入PrinterSettings自定義部分。那麼是否有內置的方法來做到這一點?

現在,我這樣做的方法就是將所有自定義配置節放置在MainGUI項目的App.config中,並將需要的部分複製到UnitTest項目的App.config中。

回答

1

沒有辦法做到這一點,你不應該把app.config放在任何庫項目中(除非在極少情況下,比如WCF)。所有配置都應該轉到可執行項目的app.config,因爲這是System.Configuration.ConfigurationManager關心的地方。

相關問題