在C# WinForm中,常见的错误处理和日志记录方法包括:
try-catch块:使用try-catch块捕获并处理异常,可以在catch块中记录异常信息到日志中。try{ // 代码块}catch (Exception ex){ // 处理异常 // 记录异常信息到日志 MessageBox.Show("发生错误:" + ex.Message);}Application.ThreadException事件:通过订阅Application.ThreadException事件,可以捕获UI线程中未处理的异常。Application.ThreadException += new ThreadExceptionEventHandler(Application_ThreadException);static void Application_ThreadException(object sender, ThreadExceptionEventArgs e){ // 处理异常 // 记录异常信息到日志 MessageBox.Show("发生错误:" + e.Exception.Message);}AppDomain.CurrentDomain.UnhandledException事件:通过订阅AppDomain.CurrentDomain.UnhandledException事件,可以捕获非UI线程中未处理的异常。AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(CurrentDomain_UnhandledException);static void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e){ // 处理异常 // 记录异常信息到日志 MessageBox.Show("发生错误:" + e.ExceptionObject.ToString());}Log4Net:Log4Net是一个常用的日志记录框架,可以方便地记录应用程序的日志信息。private static readonly ILog log = LogManager.GetLogger(typeof(Form1));public Form1(){ InitializeComponent(); XmlConfigurator.Configure();}private void button1_Click(object sender, EventArgs e){ try { // 代码块 } catch (Exception ex) { log.Error("发生错误:" + ex.Message); MessageBox.Show("发生错误:" + ex.Message); }}通过以上方法,可以有效地处理C# WinForm应用程序中的错误,并记录相关的日志信息,方便开发人员进行故障排查和调试。


