让我们从上下文开始!
在我的工作中,我被要求为我的项目添加一些日志功能,这是一个 ASP.NET 中的 Web 应用程序。
我想的很好,我可以只为我的项目做,但这不是很有用!所以我想创建一个可以在其他项目(webapps 或 windows 应用程序)中使用的 DLL。
所以我计划了这些功能:
用于配置的 XML 文件:文件的日志级别、文件的位置、保存时间、写入新日志文件之前的最大大小。例如,我可以有一个日志文件,其中仅写入错误和关键日志,另一个文件将写入信息和警告日志。
- 能够为 Web 应用程序或 Win 应用程序登录
但这里有问题,我正在考虑可能出错的不同事情,我想在开发它之前确定我做了什么。
首先,我必须检测它是 Web 应用程序还是 Windows 应用程序。我找到了一些有用的东西,比如这个
然后我在想日志怎么写,每次写一行日志,我都要打开和关闭我的文件。我觉得这是表演中非常贪婪的东西。我错了吗 ?还有其他方法吗?
还应该指出的是,从 Web 应用程序或多线程 Windows 应用程序登录时可能会出现问题。另一个问题是 log 方法可能一次被调用两次(2 次),这将产生同时访问 log 文件的问题。处理这些问题的最佳方法是什么?
最后,我想知道您是否看到任何其他可能对这种 dll 造成问题的事情?
谢谢你的帮助 !:)