【问题标题】:How to handle .NET Localizations如何处理 .NET 本地化
【发布时间】:2010-02-17 06:13:04
【问题描述】:

我有一个 .NET 应用程序,其中包含要本地化的资源的附属程序集,但我想将本地化工作留给客户,我可以用强名称签署我的应用程序,然后将应用程序二进制文件交付给客户并让他们自己做本地化工作?我还需要做什么?非常感谢。

【问题讨论】:

    标签: .net localization multilingual-app-toolkit


    【解决方案1】:

    第一个问题是您为什么要将这件事留给您的客户。如果您希望使用内置的 .NET 本地化功能,则需要生成 .resources 文件,将该文件链接到附属程序集,并将其放置到 GAC 或可执行文件的适当相对子路径中。这真的是开发人员的事情……不完全是客户的事情。

    也就是说,您没有理由不能为您的客户提供可以为他们完成所有这些工作的工具,并且只需要求他们为您的每个资源填写正确的特定于语言的数据。编写一个为资源提供简单编辑器的工具应该很容易(您甚至可以重新托管 Visual Studio 资源编辑器),以及一些选择语言代码和构建、签名(如有必要)的选项,并部署。

    以下 MSDN 文档区域可能会有所帮助。 Resources in Applications, Creating Resource Files

    【讨论】:

    • 您好,感谢您的回复。如果我对我的二进制文件进行强名称签名,我的用户是否可以对其进行本地化?
    • 您的程序集将不包含本地化数据。您的资源被编译成附属程序集,每种语言代码一个。所以,如果你有 MyAssembly.dll,你可能有一堆特定语言的程序集:MyAssembly.en.dll(通用英语)、MyAssembly.en-us.dll(美国英语)、MyAssembly.en-gb.dll(英式英语)、MyAssembly.de.dll(德语)、MyAssembly.fr.dll(法语)、MyAssembly.sp.dll(西班牙语)等。如果您的客户希望为您的程序创建德语和法语翻译,并且您提供他们有一个工具来做到这一点......
    • ...您的工具将获取它们提供的资源,生成一个 .resources 文件,将该文件链接到附属程序集,并在必要时签署新的附属程序集。一旦程序集存在,只需将其部署到应用程序的正确子文件夹(您可以在 MSDN 文档中找到更多相关信息。)只要您正确使用 .NET 资源管理器来检索本地化字符串、图像、图标等,一旦特定于文化的程序集存在于正确的位置......然后 .NET 会完成其余的工作。
    【解决方案2】:

    我认为你需要 MAT。 https://blogs.msdn.microsoft.com/matdev/

    它允许您创建导出的 xlf 文件,您的客户可以使用这些文件进行翻译并发回给您。

    https://marketplace.visualstudio.com/items?itemName=MultilingualAppToolkit.MultilingualAppToolkit-18308

    客户只需安装小编辑器即可填写翻译(±3MB)。 可以通过以下方式下载:https://developer.microsoft.com/en-us/windows/develop/multilingual-app-toolkit

    【讨论】:

      猜你喜欢
      • 2012-07-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多