【发布时间】:2015-11-18 01:32:14
【问题描述】:
我正在构建一个多语言 MVC 应用程序,并拥有一系列资源文件,其中包含将显示给用户的消息的翻译字符串。
有什么方法可以确保以后添加的任何资源文件都具有所有必需的键并且拼写正确?
打个比方,如果资源文件是一个常规类,您可以提供一个接口来确保所有必需的方法和属性都存在于实现类中。资源文件有类似的概念吗?
【问题讨论】:
-
我相信资源文件有一个默认的后备值。例如,如果您在
Resources.resx中定义值,那么Resources.es.resx中缺少的任何键都将退回到第一个文件。这并不能保证它们会被实施,但可以确保会有一些东西。 -
.NET 资源文件的一个更好的类比是具有虚拟方法的基类,它可以(不是必须)在派生类中被覆盖
-
@MaxHampton 是的,但如果可能的话,我仍然希望进行一些验证。
-
@ThomasLevesque 这更有意义,但问题仍然存在。
-
ReSharper 等一些工具会验证所有资源是否在所有语言中都被覆盖(如果您在 XML 中打开 resx 文件,而不是在设计器中)
标签: c# .net visual-studio translation culture