处理错误消息的最佳方法

5

我想知道在我的应用程序中处理错误消息的最佳方法。

目前,我正在开发一个Web应用程序,所有错误消息都存储在数据库中,我们通过ID获取它们,负数表示错误,正数表示成功消息。

问题在于很难维护和跟踪文本消息。

您有什么解决方案?

2个回答

4
一般来说,我会将错误信息的文本保存在资源文件中。如果您使用的是.NET 2.0或更高版本(Visual Studio 2005或更高版本),则资源文件会自动编译为强类型类,使访问这些消息的代码更加清晰易读。
(编辑:看到另一条评论提到本地化,我也觉得有必要在这里提一下:.NET资源文件非常适合本地化。您可以通过完全相同的代码获取资源的本地化文本,只需进行一些微小的调整以提供CultureInfo即可。)
话虽如此,听起来问题域的一部分是消息编号。这些错误是从数据库中抛出的吗(比如作为存储过程或触发器的一部分)?在这种情况下,最可能的是将它们存储在数据库中,即使仅仅因为这样可以最接近使用“魔术数字”的地方记录它们。

2
如果你要进行本地化,我建议使用英文文本作为键,然后在你选择的存储(基于SQL的数据库、文件存储或其他)中执行查找,返回适当的本地化字符串。
如果请求的键不存在于存储中,你可以返回一个纯文本错误,并可能通过电子邮件通知开发者。
更多灵感,请参见GNU gettext

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接