有没有类似企业图书馆模式和&控制台应用程序的实践?

时间:2013-04-12 17:22:15

标签: c# exception-handling console-application enterprise-library

在控制台应用程序中是否有类似Enterprise Library Patterns & Practices的内容?我特意寻找可用于记录异常日志/电子邮件通知的内容,而不是在每个SendExceptionMail块上调用catch函数。

1 个答案:

答案 0 :(得分:2)

我使用log4Net来做这类事情,我通常使用多个appender配置可执行文件并完全省去Console.Write()。我通常(至少)有一个

  • ColoredConsoleAppenderConsoleAppender以登录控制台
  • RollingFileAppender创建日志文件。

只需添加SmtpAppender即可通过电子邮件发送活动。添加其他appender以根据需要登录到Windows事件日志或SQL数据库。

有关配置示例,请参阅http://logging.apache.org/log4net/release/config-examples.html

暂且不说......为什么你需要多个catch块?你不应该catch - 除非你实际上处理例外 - 除非有一些例外:我建议捕获,记录和继续例外处理过程或机器边界交叉。

相反,让异常冒泡。在catch中有一个记录异常的Main()。更简单。