2012-12-11 55 views
0

我有幾個自定義配置節在我的項目web.config中定義,與當前web.config設置這些引用沒有問題。我現在試圖將這些自定義配置節中的一些與appSettings條目一起提取到它們自己的.config文件,因爲這些值是從環境(DEV,QA,UAT,PROD)更改的。Web.config自定義配置部分在單個外部文件,Visual Studio 2010

我對面來的問題是,如果我有我的指向同一個文件自定義配置節,他們希望每根元素是該類型。下面是一個嘗試web.config安裝程序的片段。

<?xml version="1.0"?> 
<configuration> 
    <configSections> 
     <section name="custom1" type="Namespace.custom1, myProject"/> 
     <section name="custom2" type="Namespace.custom2, myProject"/> 
    </configSections> 
    <custom1 file="/Dev.config"> 
    </custom1> 
    <custom2 file="/Dev.config"> 
    </custom2> 

    <appSettings file="/Dev.config"> 
    ... non environment specific entries 
    </appSettings> 

</configuration> 

裏面我Dev.config文件我有以下幾個部分

<?xml version="1.0"?> 
    <custom1> 
     <customVal1 attr1="abc" attr2="xyz"/> 
    </custom1> 
    <custom2> 
     <diffCustomVal1 difAttr1="True" difAttr2="Jim"/> 
    </custom2> 

    <appSettings> 
     ... environment specific entries 
    </appSettings> 

我已經看了在線,但沒有發現我喜歡的任何想法。我想知道其他人如何解決這個問題。我也嘗試從一個不同的自定義配置部分創建一個單獨的外部配置,將上面顯示的部分放在該文件內部,但是該程序無法從該配置文件中獲取appSettings條目。

回答

0

從一個連續的傳遞點,它會更直截了當只需爲每個單獨的環境配置文件。

他們可以保持在源單獨的文件夾,用「DEV」一個是默認的保存與項目。

您將控制將哪個配置文件作爲部署腳本/進程的一部分部署到每個環境。

我見過的那種「鏈」你在談論之前的,而最終的結果往往是步曲折的配置,在每個環境中結束了冗餘條目的質量。

+0

這當然是一種選擇,但我覺得如果只用一個外部參考就可以獲得兩全其美的效果。它還可以更輕鬆地跟蹤從環境到環境的變化,而只需查看子集而不是整個文件。 –

相關問題