Подтвердить что ты не робот

Как сделать преобразование web.config для smtp?

У меня это в моем корневом web.config

 <mailSettings>
     <smtp from="[email protected]" 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. Я еще не уверен, как сделать преобразования.

4b9b3361

Ответ 1

Добавьте 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>

Ответ 2

Вы можете использовать преобразование web.config в asp.net 4

вы должны написать правило преобразования для соответствия локальному правилу, которое будет заменено, когда вы публикуете свой сайт в определенной трансформации

здесь есть какая-то отличная информация.

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