举例:邮件发送错误记录日志
日志记录接口:(ILogService.cs)
public interface ILogService
{
void Write(string message);
}
日志记录接口(实现):(FileLogService.cs)
public class FileLogService : ILogService
{
private static object lockObj = new object();
#region ILogService 成员
public void Write(string message)
{
lock (lockObj)
{
try
{
string logFile = HttpContext.Current.Server.MapPath(string.Format("~/{0:yyyy-MM-dd}.log", DateTime.Now));
FileInfo fi = new FileInfo(logFile);
StreamWriter sw = null;
try
{
if (fi.Exists)
sw = fi.AppendText();
else
sw = fi.CreateText();
sw.WriteLine(">>> " + DateTime.Now + " <<<");
sw.WriteLine(message);
sw.WriteLine();
sw.Flush();
}
finally
{
if (sw != null)
sw.Close();