Frage

Wie kann ich testen Senden E-Mail von meiner Anwendung ohne meinen Posteingang überschwemmen?

Gibt es eine Möglichkeit IIS / ASP.NET zu sagen, wie E-Mail für die Inspektion in einem lokalen Ordner liefern?

War es hilfreich?

Lösung

Ja, es gibt einen Weg.

  

Sie können web.config wie diese so verändern   dass, wenn Sie es senden E-Mail wird   stattdessen als EML-Datei erstellt werden, in   c: \ LocalDir

.
    <configuration>  
     <system.net>    
      <mailSettings>      
       <smtp deliveryMethod="SpecifiedPickupDirectory">        
        <specifiedPickupDirectory pickupDirectoryLocation="c:\LocalDir"/>      
       </smtp>    
      </mailSettings>  
     </system.net>
    </configuration>

Sie können auch eine Instanz der SmtpClient Klasse mit den gleichen Einstellungen, wenn Sie wollen nicht / kann nicht die web.config ändern. In C #, dass etwas wie folgt aussieht:

var smtpClient = new SmtpClient();
smtpClient.DeliveryMethod = SmtpDeliveryMethod.SpecifiedPickupDirectory;
var emailPickupDirectory = HostingEnvironment.MapPath("~/EmailPickup");
if (!Directory.Exists(emailPickupDirectory)) { 
    Directory.CreateDirectory(emailPickupDirectory)
}
smtpClient.PickupDirectoryLocation = emailPickupDirectory;

Andere Tipps

Konfigurieren Sie Regeln in Ihrem E-Mail-Client, um die Nachrichten zu verschieben, basierend auf den Betreff / Absender des E-Mail-Adresse?

scroll top