加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – 从源代码,aspx,xaml中提取可本地化的字符串到资源文

发布时间:2020-12-16 06:32:01 所属栏目:asp.Net 来源:网络整理
导读:作为基于asp.net,c#,silverlight,XBAP的应用程序国际化的一部分,我正在评估开始的方法.我必须在 GNU gettext()(PO files)和Microsoft的资源(resx)方法之间进行选择.所以在这个时刻,我试图了解如果我必须采用MS方式,从.cs文件,aspx,ascx,xaml(silverlight)文
作为基于asp.net,c#,silverlight,XBAP的应用程序国际化的一部分,我正在评估开始的方法.我必须在 GNU gettext()(PO files)和Microsoft的资源(resx)方法之间进行选择.所以在这个时刻,我试图了解如果我必须采用MS方式,从.cs文件,aspx,ascx,xaml(silverlight)文件到资源文件(resx)自动提取可本地化字符串的最佳方法是什么.

我有以下选项:

> Resource Refactoring tool,但它提取所有字符串(无论你是否需要翻译),如页眉等.我们不能标记或排除特定的字符串.或者我们必须手动选择每个字符串然后提取(右键单击并单击提取).
> Resharper’s Localization assistance,这里我没有看到自动提取,但我必须手动提取字符串.

我知道必须进行一些人工干预,但任何建议都有助于在gettext()(gnu gettext() c# or fairlylocal或MS本地化方法)之间选择正确的方向.

解决方法

两种方法都有利有弊,让我们讨论一下.

FairlyLocal

(GNU Gettext)首先,需要进行初始调整:

>下载库&工具和转储在相对于您的项目的某个地方
>修改站点的基页对象(手动干预)
>在您的Web项目中添加一个后期构建步骤,该步骤将运行xgettext并更新您的.po文件

第二,字符串提取由FairlyLocal自己处理.
第三,字符串的翻译可以在内部完成或外包,因为语言学家广泛知道PO文件.第四,渲染几个UTF-8字符(如果有的话)取决于webfonts {eot(trident),svg(webkit,gecko,presto)}.第五,需要维护语言环境(如pa-IN languageCode-countryCode).第六,有几个converters可用于PO文件.第七,默认逻辑将回退到该值的default-locale(en-US)资源.一个问题,The .po files that the build script generates won’t be UTF8 by default. You’ll need to open them in POEdit (or similar) and explicitly change the encoding the first time you edit them if you want your translated text to correctly show special characters.

MS本地化

首先,使用资源重构工具提取字符串非常简单.第二,resgen.exe命令行工具可用于使.resx文件语言学家友好.

resgen /compile examplestrings.xx.resx,examplestrings.xx.txt

第三,.NET中的本地化(不是特定于ASP.NET Proper或ASP.NET MVC)实现了标准的回退机制.第四,不依赖于GNU Gettext Utils.第五,可以使用CurrentUICulture和CurrentCulture实现从字符串到日期,货币等的本地化.第六,这里也建议使用webfonts.

谢谢.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读