我所做的是使用entlib的源代码.
内
Microsoft.Practices.EnterpriseLibrary.Logging和
Microsoft.Practices.EnterpriseLibrary.Logging.TraceListenerData
我找到了我需要的课程.
>将EmailMessage.cs复制到EmailMessageHTML.cs
>将EmailTraceListener.cs复制到EmailHTMLTraceListener.cs
>将EmailTraceListenerData.cs复制到EmailHTMLTraceListenerData.cs
将这些类放在您自己的新库项目中.
在EmailMessageHTML中,更改所有构造函数以匹配新的类名,而不是ADD跟随该方法的行:
protected MailMessage CreateMailMessage() { ..... message.IsBodyHtml = true; ..... return message; }
之后,我不得不在EmailHTMLTraceListener中使用这个新的EmailMessageHTML类(将EmailMessage更改为EmailMessageHTML),并在新的EmailHTMLTraceListenerData.cs文件中使用此EmailHTMLTraceListener.
编译这个新项目,然后在配置中使用它,如下所示(示例)
<loggingConfiguration name="Logging Application Block" tracingEnabled="true" defaultCategory="" logWarningsWhenNoCategoriesMatch="true"> <listeners> <add toAddress="your@emailgoes.here" fromAddress="yourserveraddress@goes.here" 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,PublicKeyToken=null" name="EmailHTML TraceListener"/> </listeners> </loggingConfiguration>
并添加一个有效的类别来记录这个当然:
<add switchValue="All" name="OutOfBalanceBooking"> <listeners> <add name="Database Trace Listener"/> <add name="EmailHTML TraceListener"/> </listeners> </add>
当然,您需要一些HTML文档,而不是使用EntLib进行日志记录.我将其作为练习留给读者.的确!我现在收到一封很好的HTML电子邮件,用于客户在网站上进行的每次超额预订…
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。