.net studio 如何分享App.config?



visual studio code (4)

首先,請記住,App.config或web.config對於在解決方案中由啟動項目建立的“進程”中使用的任何項目中運行的所有代碼都是可見的...即,如果您的解決方案有一個控制台應用程序和5個類庫,或一個WinForms應用程序和4個類庫,或一個WIndows服務和3個類庫,或一個控制台應用程序用作啟動項目,另一個控制台應用程序用作類庫,然後你沒有問題,所有項目都可以看到配置app.config和所有引用的文件。

其次,如果您在解決方案中運行兩個或更多單獨的可執行進程(如Windows服務作為服務器,以及winforms客戶端),那麼如果您希望它們共享特定的配置設置,您可以將這些設置放入machine.config文件,雖然你應該小心這樣做..而一些企業服務器團隊皺眉...

如何在Visual Studio解決方案中的多個項目之間共享/鏈接App.config或Web.config?


Answer #1

在從Visual Studio的解決方案資源管理器中獲取的“ 添加現有項”對話框中,可以將指向磁盤上另一個文件的鏈接添加到項目中。 為此,您必須單擊“ 添加”按鈕右側的向下箭頭,然後選擇“ 添加為鏈接”


Answer #2

微軟的另一種方法

使用<appSettings>元素的fileattribute指定一個外部文件,該文件將定義常見的<appSettings>元素。

外部文件將具有與app.config文件相同的模式,但根節點必須是<appSettings>而不是<configuration>

創建通用配置文件:

  1. 在“文件”菜單上,指向“新建”,然後單擊“文件”。
  2. 在“新建文件”對話框中,執行以下操作:

    一個。 在“類別”窗格中,選擇“常規”。
    灣 在“模板”窗格中,選擇“XML文件”。
    C。 單擊“打開”按鈕以創建新的通用配置設置文件。

  3. 添加新的<appSettings>元素。

  4. 使用<add>元素在<appSettings>節點中根據需要<add>任意數量的常用配置設置,方法與使用任何普通app.config文件相同。

  5. 保存配置文件。

在每個項目中指定公共配置文件

  1. 打開每個客戶端項目的app.config文件。

  2. 導航到<configuration>節點中的<appSettings>元素。 如果元素不存在,請添加一個新元素。

  3. 將新屬性文件添加到<appSettings>元素,並將公共配置文件的相對路徑指定為其值。
    客戶端項目現在可以訪問常用配置設置。

以下示例顯示如何在外部文件中定義公共配置設置。

        <?xml version="1.0" encoding="utf-8" ?>
        <appSettings>
            <add key="commonSetting1" value="MyApplication1" />
            <add key="commonSetting2" value="MySetting" />
        </appSettings>

以下示例顯示如何在項目的app.config文件中指定公共配置文件的路徑。

        <?xml version="1.0" encoding="utf-8" ?>
        <appSettings file=”c:\commonSettings.config”>
            <add key="myAppSpecificSetting" value="Setting1" />
        </appSettings> 

如示例所示,客戶端項目的app.config文件除了指向公共配置文件外,還可以在<appSettings>元素中指定其他設置。 如果多次指定相同的設置,則使用指定的最後一個值。 如果在公共配置文件和客戶端項目app.config文件中指定了相同的設置,則使用公共配置文件中指定的值。


Answer #3

根據post of nawfal,如果要使用ConfigurationManager操作appSettings,請使用configSource屬性:

<?xml version="1.0" encoding="utf-8" ?>
<appSettings configSource=”c:\commonSettings.config”>
    <add key="myAppSpecificSetting" value="Setting1" />
</appSettings>




visual-studio