我有一个成功转换连接字符串的Web.Release.config。
当我添加一个microsoft.identityModel部分时,我收到一条警告
'http://schemas.microsoft.com/XML-Document-Transform'属性是 没有宣布
转换不适用于该部分。
为了让转换工作,我错过了什么?
完成Web.Release.config
<?xml version="1.0"?>
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
<connectionStrings>
<add name="MYNAME"
connectionString="metadata=res://*/Models.MYCOMPANY-Sales-Demo.csdl|res://*/Models.MYCOMPANY-Sales-Demo.ssdl|res://*/Models.MYCOMPANY-Sales-Demo.msl;provider=System.Data.SqlClient;provider connection string="data source=.;initial catalog=MYCOMPANYDemo;UID=MYCOMPANYDBUser;Password=********;multipleactiveresultsets=True;App=EntityFramework""
xdt:Transform="SetAttributes" xdt:Locator="Match(name)" />
</connectionStrings>
<system.web>
<compilation xdt:Transform="RemoveAttributes(debug)" />
</system.web>
<microsoft.identityModel>
<service>
<audienceUris>
<add value="http://MYCOMPANY-sales-demo.cloudapp.net/" xdt:Transform="Replace"/>
</audienceUris>
<federatedAuthentication>
<wsFederation realm="http://MYCOMPANY-sales-demo.cloudapp.net/" xdt:Transform="SetAttributes(realm)" />
</federatedAuthentication>
</service>
</microsoft.identityModel>
</configuration>
答案 0 :(得分:5)
我也遇到了这个问题,但已经开始工作了。我做的是“RemoveAll”和“Insert”而不是替换/匹配:
<audienceUris>
<add xdt:Transform="RemoveAll" />
<add value="http://example.com/" xdt:Transform="Insert" />
</audienceUris>
当我这样做时,我得到了所需的转换和输出配置文件。
答案 1 :(得分:5)
这似乎与Visual Studio 2012(v4.5.50709)一起使用。我仍然在编辑器中看到'属性未声明'警告,但xdt:Transform =“Replace”指令对我有效。