3

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

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

只要我以“调试”模式发布到 IIS,它就可以正常工作。

我想使用不同的文件夹进行生产,所以在 web.release.config 我尝试替换MailQueue为:

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

但是,当我尝试以“发布”模式发布时,该MailQueue值无法正常工作。即使我将 web.release.config 设置为相同的路径,例如:

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

邮件队列停止工作。我用错了吗?

4

1 回答 1

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

于 2012-08-07T22:10:51.673 回答