日期:2014-05-20  浏览次数:20847 次

C# 系统日志 Exception
我现在要做一个系统日志,记录一些系统中出现的问题。记录到数据库中。我现在 想写一个类MyException继承Exception.然后,为要在系统中出现异常的时候 用我的MyException 来拦截所有的系统异常,错误的信息,然后写入数据库。要如何实现,高分跪求答案!!!!

------解决方案--------------------
设计自定义异常

http://msdn.microsoft.com/zh-cn/library/ms229064.aspx

http://www.mzwu.com/article.asp?id=1439


------解决方案--------------------
http://www.cnblogs.com/duanjingdi/archive/2007/10/11/920711.html

http://book.51cto.com/art/200909/154242.htm

http://www.cnblogs.com/guangpeng/archive/2010/12/17/1909705.html
------解决方案--------------------
使用log4net异常捕获,然后写日志

自己查一下log4net很简单。

C# code

  private static ILog log = LogManager.GetLogger(MethodInfo.GetCurrentMethod().DeclaringType);

            try
            {//程序
            }
            catch (MyException mex)
            {
                log.Error(mex);
                MessageBox.Show(ex.Message);
            }
            catch (Exception ex)
            {
                 log.Error(ex);
            }

------解决方案--------------------
日志可以使用Enterprise Library.

支持下面的provider
The event log
An e-mail message
A database
A message queue
A text file
A WMI event
Custom locations using application block extension points

如果将来想改provider,只要修改.config文件即可

参考
http://msdn.microsoft.com/en-us/library/cc309257.aspx