10 Avr Tests de l’envoi de mails sur une application en développement
Lorsque l’on travaille sur une application/site web en développement, il est souvent assez difficile de tester l’envoi de mails, en particulier si l’email doit partir à des destinataires différents suivants telle ou telle conditions.
Heureusement, en .NET, il existe une astuce assez rapide à mettre en œuvre. Il s’agit uniquement de changer le mode de distribution SMTP sur SpecifiedPickupDirectory. Cette méthode va permettre, au lieu d’envoyer directement les emails, créer des fichier .EML dans un répertoire spécifié.
Dim mail As New System.Net.Mail.MailMessage("moi@ndrou.fr", "toi@ndrou.fr") mail.Subject = "Ndrou is the best !" mail.IsBodyHtml = True mail.Body = "Mon corps..." Dim smtp As New System.Net.Mail.SmtpClient("smtp.ndrou.fr", 25) ' Nous définissons une condition permettant de compiler cette partie ' uniquement en mode DEBUG #If DEBUG Then ' Nous définissons la méthode d'envoi de mails smtp.DeliveryMethod = Net.Mail.SmtpDeliveryMethod.SpecifiedPickupDirectory ' Si le dossier dans lequel nous allons stocker les mails n'existe pas, ' alors nous le créons If Not IO.Directory.Exists("C:\debug-mail\") Then IO.Directory.CreateDirectory("C:\debug-mail\") End If ' Nous définissons le repertoire de sorties des mails smtp.PickupDirectoryLocation = "C:\debug-mail\" #End If ' Nous envoyons le mail smtp.Send(mail)
Cette astuce est aussi possible directement dans votre fichier de configuration web.config ou app.config
<configuration> <system.net> <mailSettings> <smtp deliveryMethod="SpecifiedPickupDirectory"> <specifiedPickupDirectory pickupDirectoryLocation="c:\debug-mail" /> </smtp> </mailSettings> </system.net> </configuration>
Et voila, adieu le spam accidentel de vos clients! 🙂
MailTrap, serveur SMTP de développement | Ndrou.fr
Publié à 15:43h, 31 décembre[…] un précédent billet, nous évoquions la possibilité de configurer notre application/site web ASP.NET afin que celui-ci […]