Configurando SmtpClient para o ambiente de desenvolvimento

Fala, galera

Quando estamos desenvolvendo uma aplicação que precisa enviar e-mails, fazemos uso da API SmtpClient e , por padrão, suas configurações são definidas no arquivo web.config (ou app.config), tal como exemplo abaixo:

<configuration>
   <system.net>
      <mailSettings>
         <smtp deliveryMethod="Network">
            <network host="smtp.teste.com"/>
         </smtp>
      </mailSettings>
   </system.net>
</configuration>


Tudo ok até aí. Porém, em ambiente de desenvolvimento, pode ser indesejado (e chato) ficar enviando e-mails aos montes somente para poder verificar sua formatação.

Seria legal (e prático) se, ao invés de enviar um e-mail via SMTP, o .Net simplesmente salvasse o e-mail em uma pasta na sua máquina. Pois é, isso é possível e da forma mais básica: editando algumas configurações no .config.

Veja como fica:

<configuration>
   <system.net>
      <mailSettings>
         <smtp deliveryMethod="SpecifiedPickupDirectory">
            <network host="ignored"/>
            <specifiedPickupDirectory pickupDirectoryLocation="D:\Temp" />
         </smtp>
      </mailSettings>
   </system.net>
</configuration>

Fiz 3 alterações simples no arquivo: troquei o método de entrega para “SpecifiedPickupDirectory”; defini como “ignored” o nome do host e especifiquei a pasta onde os e-mails serão salvos (d:\temp). Básico!

Agora quando sua aplicação enviar um e-mail, o arquivo .eml será salvo na pasta especificada. Basta abri-los no seu cliente de e-mail preferido ou em um editor de texto qualquer.

Vale lembrar que a pasta configurada no .config já deve existir em disco e possuir permissão de escrita.

Ficaíadica!

Fui!

Anúncios

Participe! Vamos trocar uma ideia sobre desenvolvimento de software!

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s