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!
Participe! Vamos trocar uma ideia sobre desenvolvimento de software!