3
|
Sandor Drieënhuizen · 技术社区 · 14 年前 |
1
5
由于您的异常消息是英文的,所以我将坚持不变的文化。为什么要将英文文本与非英文数字格式混合? 但是,如果您尽可能地本地化异常消息(如.NET Framework),则需要使用所选资源程序集的区域性。这可以确保数字格式和语言匹配,即使没有可用的本地化(即,它返回到英语)。 然而,在我的理解中,异常消息主要是针对开发人员的。因此,我不会考虑本地化它们,除非它是一个拥有来自世界各地开发人员的大型项目。如果无法处理异常,则应捕获异常并向用户提供一些在给定上下文中合适的错误消息(这可能与异常消息一样精确,也可能不一样精确)。 向他们提供异常消息本身(尤其是对于Web服务器)可能会公开有关服务器软件的详细信息,这些信息可能会被恶意使用。我认为最好记录异常并向用户提供(本地化的)错误消息和一些数据,以便将日志事件(很可能是非本地化的、不变的区域性)与其反馈关联起来。 例如,除非以这种方式明确配置,否则WCF不会向用户报告异常详细信息。见 IncludeExceptionDetailInFaults 配置设置和“小心”块。 |
2
1
imho您可以使用异常类的“data”属性。 这样,您可以将要记录的不变消息存储在“消息”属性中。 您可以在“数据”集合中添加一个keypair值,其中key=“ui message”和value=ui消息的格式正确,符合用户区域性(并且可能是根据正确的区域性翻译的消息)。 在异常处理程序中,为了记录或显示正确的消息,您可能只需要在消息属性和数据对之间进行选择。 |
Matthew Thibodeau · JavaFX图像错误[重复] 6 年前 |
user3239349 · C#UWP动态更改全局字体 6 年前 |
Diego · net core 2.0读取文件添加为资源 6 年前 |
Asif Mushtaq · Java 9模块系统资源文件位置 6 年前 |
Jaeger · 使用单个资源更新时Rails无路由匹配帖子url 7 年前 |