.net - .NET 中文本文件资源的本地化

标签 .net visual-studio localization internationalization resx

本地化/全局化在 Visual Studio 中使用 RESX 文件非常容易。我只是添加一个资源文件,如 MyTextSnippets.resx,添加键/值对,并为我想要支持的每种语言创建副本,如 MyTextSnippets.de.resx , MyTextSnippets.fr.resx

现在考虑较长的文本,其中字符串资源编辑器网格不能很好地工作。没问题,只需从设计器中选择“添加资源|添加新文本文件”,您就可以编辑任意数量的文本文件。示例:我添加了 MyTemplates.resx,并向此 RESX 添加了一个名为 SomeEmailTemplate.txt 的文件。到目前为止工作正常,但是当创建 resx 文件的副本时,比如 MyTemplates.de.resx,并从那里打开 SomeEmailTemplate.txt,它将打开 总是同一个文件。如果仔细查看,文本文件不会嵌入到 resx 容器中,而是在全局文件夹“Resources”中创建,并且 resx 文件仅包含对同一个文件的引用。

我不知道如何本地化它。有什么想法吗?

当然,我可以为每种语言嵌入一个文本文件,并在运行时枚举可用的文本文件并尝试找到最适合当前线程的 UI 文化的文件。然而,这感觉不对,因为字符串和设计器属性的所有魔法都是开箱即用的。

最佳答案

为您想要的每种本地化语言创建一个文件夹,将相应的 txt 文件放在该文件夹中并引用它。

了解全局化/本地化最佳实践 here .

关于.net - .NET 中文本文件资源的本地化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3307466/

相关文章:

.net - 我们如何创建资源卫星程序集

c# - 根据以下标准开发桌面应用程序的语言/平台

visual-studio - 在 Visual Studio 构建事件中从批处理文件输出错误、警告和消息

c# - 在工具栏上动态显示自定义 Visual Studio VSPackage 命令

php - 配置文件中不存在 Laravel 类转换器

python /Tkinter : Using Tkinter for RTL (right-to-left) languages like Arabic/Hebrew?

c# - .NET 世界是否有日志外观?

c# - 数据绑定(bind)到嵌套属性 - 无法绑定(bind)属性或列 (Winforms)

c# - 在 IIS8 中部署时缓存不起作用

asp.net-mvc - Visual Studio 2013 'add controller'丢失