我不是很清楚如何在多语言应用程序中处理异常才最佳。
在哪里处理错误消息的翻译(Exception.Message
)?
我是否应该在构造函数中立即翻译并抛出异常时?
throw new MyException("Error message", Resource.MyException_TranslatedMessage);
我应该抛出异常,然后使用自己编写的帮助程序,在视图逻辑中使用异常类型来查找错误消息吗?
try
{
//...
}
catch(Exception ex)
{
myLabel.Text = new ExceptionTranslator(ex).Translate();
}
那么,微软是否提供工具或机制来完成这项工作呢?
简而言之:如何处理异常消息的翻译才是良好的实践呢?