如何完全避免本地化的.NET异常消息

时间:2012-11-07 15:02:46

标签: .net

当我的.NET应用程序发生错误时,我收到一条异常消息(在我的例子中)瑞典语。这对大多数用途来说都是无用的,因为。

  • 该消息通常只是原始(英语)异常消息的翻译版本[1]

  • 异常消息很少用于诊断问题,通常包括搜索错误消息。这意味着猜测或使用Web服务来查找原始英语消息。

[1]我不是在开玩笑。示例:在绑定失败的上下文中“调用程序集”被完全混淆。它被翻译为“被称为汇编”,因为英语如何使用与调用相同的单词,而正在调用。几乎就像有人用字典一字一句地翻译它。

所以我想要的是:我希望能够在非英语版的Windows安装上一致地获得英语异常消息(我想要更改应用程序的线程文化)。

有一个类似的问题(Exception messages in English?),但这是在记录的概念。在那个级别,我可以改变线程文化。

但我希望更改是全局的,并且还包括“不是我的代码”例外。

有没有办法可以配置或“黑客”(例如通过替换资源文件)? 我是唯一一个在开始时翻译异常消息的人,是.NET中一个可怕的设计缺陷吗?

我很抱歉,如果这是一个咆哮和部分问题。

2 个答案:

答案 0 :(得分:5)

删除所有.NET语言包。根据{{​​3}}(“.NET Framework 4.5语言包包含已翻译的错误消息和除英语以外的其他语言的其他UI文本。如果您不安装语言包,此文本以英语显示”),它应该够了。

答案 1 :(得分:0)

在Windows 10上可以执行此操作,但是您需要更改显示语言。

language setup

然后您需要重新设置日期时间设置

date setup

您将拥有英语系统,但对于大多数程序员而言,都没关系。