Web配置转换问题

时间:2012-08-07 22:04:52

标签: c# .net asp.net-mvc .net-4.0 web-config

我有一个web.config文件和一个web.release.config文件。在Web配置中,我定义了一个邮件队列文件夹:

  <appSettings>
    <add key="MailQueue" value="\MailQueue\"/>
  </appSettings>

只要我在&#34; debug&#34;中发布到IIS,这就可以正常工作。模式。

我想使用其他文件夹进行制作,因此在web.release.config中我尝试将MailQueue替换为:

    <appSettings xdt:Transform="Replace">
        <add key="MailQueue" value="\MailQueueProd\"/>
    </appSettings>

然而,当我尝试发布&#34;发布&#34;模式MailQueue值无法正常工作。即使我将web.release.config设置为相同的路径,如:

      <appSettings>
        <add key="MailQueue" value="\MailQueue\"/>
      </appSettings>

邮件队列停止工作。我错误地使用了这个吗?

1 个答案:

答案 0 :(得分:1)

用以下内容替换web.release.config中的内容:

<appSettings>
    <add
      key="MailQueue"
      value="\MailQueueProd\"
      xdt:Transform="SetAttributes(value)"
      xdt:Locator="Match(key)" />
</appSettings>

在上面的文档层次结构或此代码中的某处,您还需要以下XML名称空间声明:

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

以下是文档页面:http://msdn.microsoft.com/en-us/library/dd465318.aspx