如何将异常记录到文件?

How to log exceptions to a file?

对我的 MVC 项目使用 this example,我想在一个文件上记录我的异常,即使没有附加调试器,当我 运行 我的项目在 IIS 上发布后,而不是在输出中window 当项目处于调试状态时。

我的代码与 link 中提供的代码相同。

using System;
using System.Collections.Generic;
using System.Configuration;
using System.IO;
using System.Linq;
using System.Web;


namespace ServerSide
{
    public class MyLoggerService : DevExpress.XtraReports.Web.ClientControls.LoggerService
    {
        public override void Info(string message)
        {
            System.Diagnostics.Debug.WriteLine("[{0}]: Info: '{1}'.", DateTime.Now, message);
        }
        public override void Error(Exception exception, string message)
        {
            System.Diagnostics.Debug.WriteLine("[{0}]: Exception occured. Message: '{1}'. Exception Details:\r\n{2}",
                DateTime.Now, message, exception);
        }
    }
}

如何更改此代码以使其将异常记录到文件中?

如果有人需要,解决方法是在错误方法中添加以下代码:

    string filePath = @"C:\ReportDesigner\server\publish\Exceptions.txt";


    using (StreamWriter writer = new StreamWriter(filePath, true))
    {
        writer.WriteLine("-----------------------------------------------------------------------------");
        writer.WriteLine("Date : " + DateTime.Now.ToString());
        writer.WriteLine();

        while (exception != null)
        {
            writer.WriteLine(exception.GetType().FullName);
            writer.WriteLine("Message : " + exception.Message);
            writer.WriteLine("StackTrace : " + exception.StackTrace);

            exception = exception.InnerException;
        }
    }