Kann MvcMailer in einer Klassenbibliothek verwendet werden?

8

Ich möchte MvcMailer in einer Klassenbibliothek verwenden, die im Wesentlichen mein One-Stop-Shop für das Verfassen und Senden von E-Mails für meine Lösung sein würde. Ich dachte, dass das ist, wofür MvcMailer entworfen wurde, aber es scheint, dass es keine meiner .cshtml-Dateien finden kann - ich nehme an, es erwartet sie in meinem Startprojekt.

Gibt es eine Möglichkeit, dass MvcMailer zu 100% von meinen anderen Projekten getrennt ist?

Danke.

    
smdrager 09.04.2012, 21:32
quelle

1 Antwort

1

Dies ist laut MvcMailer-Dokumentation nicht möglich Ссылка (Auszug unten) Vielleicht können Sie ein separates Web-Projekt haben, dessen einziger Zweck es ist, E-Mails zu senden und nur Anfragen von Ihrer Anwendung zu akzeptieren

  

E-Mail-Versand von einem Hintergrundprozess       Müssen Sie E-Mails aus einem Hintergrundprozess senden? Ja, du hast Recht. Sie möchten Ihren Anfrage- / Antwort-Zyklus für die zu sendende Benachrichtigungs-E-Mail nicht blockieren. Was Sie wollen, ist stattdessen ein Hintergrundprozess, der es für Sie erledigt, auch wenn es nach einer kurzen Verzögerung gesendet wird. Folgendes können Sie tun:

     

Speichern Sie Ihre E-Mail-bezogenen Daten in einer Datenbank.       Erstellen Sie einen REST / SOAP-Webdienst, der die E-Mails sendet. Dadurch wird sichergestellt, dass Ihr Mailer Zugriff auf den HttpContext hat, der für das ordnungsgemäße Funktionieren des Kern-ASP.NET MVC-Frameworks unerlässlich ist. Um beispielsweise Ihre Ansichten zu finden, erstellen Sie URLs und führen eine Authentifizierung / Autorisierung durch.       Erstellen Sie eine einfache App, die den Web-Service aufruft. Dies könnte eine Windows-Dienst-App oder eine ausführbare App sein, die unter Windows-Task ausgeführt wird.       Eine zukünftige Version von MvcMailer wird wahrscheinlich Unterstützung dafür haben. Aber es ist schwer aus zwei Gründen:

     

MailMessage ist standardmäßig nicht serialisierbar und hat viele komplexe Felder und Verknüpfungen.       Das Kern-ASP.NET-Framework benötigt weiterhin HttpContext: (

    
jorgehmv 09.04.2012, 22:23
quelle

Tags und Links