2013-08-19 24 views
2

比方說,在我的主啓動項目我有web.config文件中的一些設置:web.config文件在C#中的工作原理是什麼?

<!-- ... --> 
<appSettings> 
    <add key="Setting" value="setMe!" /> 
</appSettings> 
<!-- ... --> 

這個項目有兩種配置:發佈和調試。例如web.Debug.config:

<!-- ... --> 
<appSettings xdt:Transform="Replace"> 
    <add key="Setting" value="debugValue" /> 
</appSettings> 
<!-- ... --> 

當我編譯它時,沒有轉換的配置文件。我只有三個文件:web.config,web.Debug.config和web.Release.config。

+0

你能否進一步澄清? – Raptor

+2

只有當您發佈**項目時纔會轉換Web配置。不是當你編譯項目時。 – Maarten

回答

3

您必須發佈您的項目(「Publish Web Site」命令),並且您的目標(IIS)將使用正確的web.config文件和Release配置。

+0

我試過了,但似乎我唯一的選擇是發佈到Azure。 – Ari

+0

不僅針對Azure,請點擊「發佈網站」,您將看到不同的選項(傳統的選項(如微軟創建Azure之前的選項)。 – glautrou

0

配置轉換隻在發佈時完成。你的基本配置文件應該有你的開發設置。如果您選擇使用默認版本配置,通常版本轉換文件應包含您的生產環境設置,並且調試轉換文件將包含您的測試環境設置。

就我個人而言,我通常會爲測試和生產創建一個新的構建配置,並將調試和發佈變換保留爲空。

相關問題