2014-04-01 56 views
0

我有asp.net mvc 4項目,嘗試使用變換配置,其中有一些默認值,當我嘗試更改爲發佈模式時,某些默認值更改爲發佈值,但它不是工作。當我嘗試更改爲發佈模式並構建應用程序時,我沒有任何更改。這是我的默認值在Web.config中:在asp.net mvc變換配置isnt更新

<appSettings> 
    <add key="appId" value="####"/> 
    <add key="appSecret" value="####"/> 
    <add key="hostName" value="####"/> 
    </appSettings> 

,這裏是什麼,我有我的Web.Release.config:

<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform"> 

    <appSettings> 
    <add key="appId" value="!!!!" xdt:Transform="Replace" xdt:Locator="Match(name)" /> 
    <add key="appSecret" value="!!!!" xdt:Transform="Replace" xdt:Locator="Match(name)"/> 
    <add key="hostName" value="!!!!" xdt:Transform="Replace" xdt:Locator="Match(name)"/> 
    </appSettings> 
</configuration> 

是否有人幫助我嗎?

回答

2

使用xdt:Locator="Match(name)",您試圖匹配不存在的屬性name。您正在尋找key爲應用程序設置:

<add key="appId" value="!!!!" xdt:Transform="Replace" xdt:Locator="Match(key)" /> 
<add key="appSecret" value="!!!!" xdt:Transform="Replace" xdt:Locator="Match(key)"/> 
<add key="hostName" value="!!!!" xdt:Transform="Replace" xdt:Locator="Match(key)"/> 
+0

嘗試將名稱更改爲鍵和相同的情況。 – BorHunter

+0

@BorHunter確保您選擇了正確的配置(發佈)。此外,這不是生成* build *而不是* deploy * – CodingIntrigue

+0

是的我選擇發佈。你可以解釋一下你的短語:「這不是在構建而是在部署時生成的」 – BorHunter