38

我的根 web.config 中有这个

 <mailSettings>
     <smtp from="no-reply@test.com" deliveryMethod="SpecifiedPickupDirectory">
         <specifiedPickupDirectory pickupDirectoryLocation="C:\temp"/>
         <network host="localhost"/>
     </smtp>
 </mailSettings>

当然,当我把它放到我的托管服务器上时,我不希望它保存到硬盘上,我希望它发送电子邮件。

所以我会有这样的东西

<system.net>
  <mailSettings>
    <smtp deliveryMethod="Network">
      <network host="smtp.mysite.com" userName="myuser" password="mypassword" />
    </smtp>
  </mailSettings>
</system.net>

我怎么能把它放在我的 web.release.config 中?我应该只替换mailSettings。我还不确定如何进行转换。

4

2 回答 2

66

添加xdt:Transform="Replace"到您的 .release

<system.net>
  <mailSettings>
    <smtp deliveryMethod="Network" xdt:Transform="Replace">
      <network host="smtp.mysite.com" userName="myuser" password="mypassword" />
    </smtp>
  </mailSettings>
</system.net>
于 2011-12-14T16:29:01.547 回答
3

您可以在 asp.net 4 中使用 web.config 转换

当您在特定转换中发布网站时,您将编写一个转换规则以匹配要替换的本地规则

这里有一些很好的信息

http://blog.hmobius.com/post/2010/02/17/ASPNET-40-Part-4-Config-Transformation-Files.aspx存档版本

于 2011-03-28T21:12:48.057 回答