Ich weiß, wie Sie E-Mails mithilfe der Microsoft Enterprise Library 2.0 mithilfe eines Textformatierers senden. Aber diese E-Mails sind immer im Klartext. Gibt es mit entlib 2.0 einen Weg, diese Mails im HTML-Format zu versenden?So senden Sie E-Mails im HTML-Format mit Microsoft Enterprise Library?
Antwort
Nun, das ist lustig, ich schreibe jetzt meine eigene Antwort.
Was ich tat, war der Quellcode von entlib.
Innerhalb Microsoft.Practices.EnterpriseLibrary.Logging und Microsoft.Practices.EnterpriseLibrary.Logging.TraceListenerData
fand ich die Klassen, die ich brauchte.
- Kopieren EmailMessage.cs zu EmailMessageHTML.cs
- Kopieren EmailTraceListener.cs zu EmailHTMLTraceListener.cs
- Kopieren EmailTraceListenerData.cs zu EmailHTMLTraceListenerData.cs
diese Klassen in Ihrer eigenen neuen Bibliothek Put Projekt.
Innerhalb EmailMessageHTML alle Konstrukteure ändern, um die neuen Klassennamen übereinstimmen und als ADD zu dem Verfahren folgende Zeile:
protected MailMessage CreateMailMessage()
{
.....
message.IsBodyHtml = true;
.....
return message;
}
Danach musste ich nutzen diese neue EmailMessageHTML Klasse in EmailHTMLTraceListener (ändern Emailmessage zu EmailMessageHTML) und Verwenden Sie auch diesen EmailHTMLTraceListener in der neuen EmailHTMLTraceListenerData.cs-Datei.
dieses neue Projekt zusammenstellen und als dies in der Config verwenden, wie (Beispiel) dies zu protokollieren natürlich
<loggingConfiguration
name="Logging Application Block"
tracingEnabled="true"
defaultCategory=""
logWarningsWhenNoCategoriesMatch="true">
<listeners>
<add toAddress="[email protected]"
fromAddress="[email protected]"
subjectLineStarter=""
subjectLineEnder="My HTMLemailLogger"
smtpServer="localhost" smtpPort="25"
formatter="Text Formatter"
listenerDataType="MYLibrary.HTMLEmailLogger.EmailHTMLTraceListenerData,
MYLibrary.HTMLEmailLogger, Version=2.0.0.0,
Culture=neutral,
PublicKeyToken=null"
traceOutputOptions="None"
type="MYLibrary.HTMLEmailLogger.EmailHTMLTraceListener,
MYLibrary.HTMLEmailLogger,
Version=2.0.0.0,
Culture=neutral,
PublicKeyToken=null"
name="EmailHTML TraceListener"/>
</listeners>
</loggingConfiguration>
und fügen Sie eine gültige Kategorie folgt: Sie
<add switchValue="All" name="OutOfBalanceBooking">
<listeners>
<add name="Database Trace Listener"/>
<add name="EmailHTML TraceListener"/>
</listeners>
</add>
Natürlich brauchen etwas HTML-Dokument, um mit EntLib zu loggen. Ich überlasse das als Übung für den Leser. Und tatsächlich! Ich bekomme jetzt eine nette HTML-E-Mail für jede Out-of-Balance-Buchung, die Kunden auf der Website machen ...
- 1. Verwenden Sie die Microsoft Enterprise Library?
- 2. Microsoft Enterprise Library nützlich oder nicht?
- 3. Die Zukunft von Microsoft Enterprise Library
- 4. Enterprise Library 4.1 Assemblies
- 5. Enterprise Library 5.0 Installationsfehler
- 6. C# mit Enterprise-Library
- 7. Ist der Microsoft Enterprise Library 5.0-Protokollierungsanwendungsblock threadsicher?
- 8. Enterprise Library 4.1 Ausnahmerichtlinie
- 9. Zweck des Unity-Anwendungsblocks in Microsoft Enterprise Library?
- 10. Enterprise Library Frage
- 11. Emails über SMTP mit DKIM senden
- 12. Enterprise Library 5.0 - Anwendungsprotokollierung - falsche DateTime
- 13. Enterprise Library Validation Application Block und Internationalisierung
- 14. RijndaelManaged Encryption Ersetzung der Enterprise Library
- 15. Enterprise Library Logging-Block nicht Protokollierung
- 16. Wie Exception-Manager Enterprise Library 6.0
- 17. Enterprise LIbrary und MS Azure Artikel?
- 18. Enterprise Library Application Blocks oder selbstgewachsenes Framework?
- 19. Installieren von Microsoft Enterprise Libraries und DatabaseFactory
- 20. Enterprise Library Data Access Blocks Entwurfsentscheidungen
- 21. Enterprise Library Strong Naming Guidance Package
- 22. LINQ2SQL oder Entity Framework oder Enterprise Library?
- 23. Enterprise Library Wie implementiert man einen IExceptionHandler?
- 24. Enterprise Library Logging Füllen der Event Viewer mit ClearTrust Trivia
- 25. So aktualisieren Sie ios6 Enterprise-Apps drahtlos
- 26. Microsoft Enterprise DAAB und Closing Connections
- 27. So verteilen Sie UWP Enterprise App
- 28. eine ‚Kategorie‘ in der .net Enterprise Library Logging (zum Ereignisprotokoll)
- 29. So fangen Sie mit Microsoft PixelSense an
- 30. erwarten/async Microsoft Practices Enterprise Bibliothek Daten
Tolle Arbeit Hace. Nahm deine Arbeit oben als Beispiel und ging genau das umgesetzt. schrieb die Schritte hier auf. http://trycatch.me/implementing-html-formatted-emails-in-the-enterprise-library-logging-block/ –
@EoinCampbell http://trycatch.me/implementing-html-formatted-emails-in-the -enterprise-library-logging-block/nicht gefunden –