How to do a web.config transform for smtp?

chobo2 picture chobo2 · Mar 28, 2011 · Viewed 11.9k times · Source

I have this in my root web.config

 <mailSettings>
     <smtp from="[email protected]" deliveryMethod="SpecifiedPickupDirectory">
         <specifiedPickupDirectory pickupDirectoryLocation="C:\temp"/>
         <network host="localhost"/>
     </smtp>
 </mailSettings>

Of course when I put this to my hosting server I don't want it to be saving to the harddrive I want it to send out the emails.

So I would have something like this

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

How could I put this in my web.release.config? Should I just do a replace of the mailSettings. I am not sure really how to the transforms yet.

Answer

VinnyG picture VinnyG · Dec 14, 2011

Add xdt:Transform="Replace" to your .release

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