2011-06-03 181 views
2

我使用的外部化配置節的AppSettings,能夠讓每個開發者不同的,就像這樣:衝突與MSTEST

<appSettings configSource="appsettings.config" /> 

當我運行鍼對該MSTEST項目(這是一個Web應用程序),它盲目地改變這樣的部分,因此:

<appSettings configSource="appsettings.config"> 
    <add key="microsoft.visualstudio.teamsystems.backupinfo" value="1;web.config.backup.af6ed449-e04a-4a52-99d6-b8df0b133316" /> 
    <add key="microsoft.visualstudio.teamsystems.aspnetdevserver:/" value="56917;True;3448;1;-8588944684513929784" /> 
    </appSettings> 

這顯然是錯誤的,甚至可以根據架構。

它需要修改它的原因是指定要運行的Cassini/dev服務器的信息。我想就是這樣,它似乎沒有修改文件中的任何其他部分(很難說,因爲它也完全重新格式化文件)。

問題是,我有什麼選擇才能使這個工作?

到目前爲止,我只來了兩個實際的人,兩個子最佳

  1. 拋棄的AppSettings

  2. 交換機外部配置卡西尼號到cassinidev - 然後我就可以停止使用 [AspNetDevelopmentServer ()] 屬性,這是 在web.config中需要的結果必須是 修改的

  3. 在VS中配置一些東西以防止它這樣做。爲什麼 它甚至關心自己的哪個端口 cassini正在處理?我不能 找到任何配置設置。

  4. 等待MS來解決這個問題,所以[AspNetDevelopmentServer()]將 與外化的appSettings工作

回答

5

位的延遲,所以我不知道這是不是仍然與您有關。 ...

但是,您可以使用file=屬性<appSettings>而不是configSource
即:

<appSettings file="appsettings.config" /> 

雖然configSource預計只需更換整節,file合併的章節。所以即使你添加了子元素,它仍然會從外部文件中添加額外的元素。

+0

這節省了我們這麼多時間,謝謝! – 2014-03-21 15:23:52