变换配置时,azure添加奇怪的字符

时间:2016-07-14 19:37:58

标签: azure web-config azure-web-sites web-config-transform

我有一个Web.config和一个名为Web.AzureDev.config的转换

我在以下两节中都有以下内容:

的web.config:

  <elmah>
    <security allowRemoteAccess="1" />
    <errorLog type="Elmah.XmlFileErrorLog, Elmah" logPath="~/App_Data/Elmah" />
  </elmah>

Web.AzureDev.config

  <elmah>
    <errorMail xdt:Transform="Insert" from="xxxx@xxxx.com" to="yyy@yyyy.com" subject="Dev Exception" async="true" smtpPort="0">
    </errorMail>
  </elmah>

当我部署到Azure时,无论我做什么,它总是生成elmah标记,如下所示:

<elmah>&gt;
    <security allowRemoteAccess="1" /><errorLog type="Elmah.XmlFileErrorLog, Elmah" logPath="~/App_Data/Elmah" />
    <errorMail from="xxxx@xxxx.com" to="yyyy@yyyy.com" subject="Dev Exception" async="true"
      smtpPort="0">
    </errorMail>
</elmah>

为什么这样做?为什么只在Azure?这&gt;来自哪里?我没有任何额外的尖括号。我在其他服务器的其他配置转换中也有同样的事情,并且它的行为并非如此。事实上,我有其他标签,如elmah,在其中进行类似的插入转换。那么为什么只有艾尔玛?

更新

我在两个文件中将elmah改为belmah,转换完全正常。所以它似乎对这个名字&#34; elmah&#34;过敏。不知何故转型?

1 个答案:

答案 0 :(得分:0)

虽然可能存在发布功能的错误,但请确认您没有在.config文件中错误地插入特殊字符,并且您的行结尾是一致的