浅析NopCommerce的多语言方案】的更多相关文章

前言 这段时间在研究多语言的实现,就找了NopCommerce这个开源项目来研究了一下,并把自己对这个项目的粗浅认识与大家分享一下. 挺碰巧的是昨天收到了NopCommerce 3.90 发布测试版的邮件: 不啰嗦了,开始正题了! 其实对于Nop的多语言,最主要的元素有下面两个: WebWorkContext(IWorkContext的实现类) LocalizationService(ILocalizationService的实现类) 其他相关的元素可以说都是在这两个的基础上体现价值的. 下面先…
前言: 好多年没写文章了,工作很忙,天天加班, 每天都相信不用多久,就会升职加薪,当上总经理,出任CEO,迎娶白富美,走上人生巅峰,想想还有点小激动~~~~ 直到后来发生了邮箱事件,我竟然忘了给邮箱密码赋值,导致遇到“邮箱不可用. 服务器响应为: 5.7.1 Unable to relay for”的问题,网上一查后,让Boss去设置IIS里的SMTP. 结果Boss力证不用设置也可以发,还给我发了N多Demo代码,让我蛋碎一地, 最后那点小激动,就在这小事件上栽没了~~~ 好了,不多扯了,回正…
ASPNETMVC多语言方案 前言: 好多年没写文章了,工作很忙,天天加班, 每天都相信不用多久,就会升职加薪,当上总经理,出任CEO,迎娶白富美,走上人生巅峰,想想还有点小激动~~~~ 直到后来发生了邮箱事件,我竟然忘了给邮箱密码赋值,导致遇到“邮箱不可用. 服务器响应为: 5.7.1 Unable to relay for”的问题,网上一查后,让Boss去设置IIS里的SMTP. 结果Boss力证不用设置也可以发,还给我发了N多Demo代码,让我蛋碎一地, 最后那点小激动,就在这小事件上栽没…
之前写了一篇asp.net MVC多语言方案,那次其实是为American Express银行开发的.有许多都是刚开始接触,对其也不太熟悉.现在再回过头去看,自己做一个小网站,完全用asp.net mvc 3的技术.要实现多语言,并且要求可以动态换语言.在有数据输入的地方,其数据输入校验的界面也是不一样的,比如必须输入的字段,英文显示:required, 中文就显示:请输入,等等.这里的方法和之前的文章的方法略有不同. 1. 资源文件 多语言的资源文件还是一个单独的.net 工程,里面只放资源文…
近期由于朋友邀请帮忙给一个开源的游戏“外挂”做一个I18N的解决方案,恰好也是WPF做的,之前有过相关经验,就忙了一个星期终于搞定了,已经提交给作者了,现在这里做一个分享. 这里分享下我个人Fork的GitHub地址: https://github.com/Cuiyansong/Hearthstone-Deck-Tracker 什么是I18N 简单来说就是多语言,为什么多语言叫I18N,请参见结语中的引用. 如何实现 其实WPF上实现多语言于winform有些相似,就是更换软件运行时资源(Res…
在网上查阅了众多方案,觉得路过秋天的方案 解耦性比较好,可以不使用微软的Resource文件,而是将所有的词汇放入在一个txt的词典之中,便于维护. 步骤如下: 1)在整个程序的入口处global.asax.cs加入函数 private void ReadDic(string dicFileName) { var dicPath = Path.Combine(Server.MapPath("/File"), dicFileName); string dicStr; using (var…
可以不使用微软的Resource文件,而是将所有的词汇放入在一个txt的词典之中,便于维护. 步骤如下: 1)在整个程序的入口处global.asax.cs加入函数 private void ReadDic(string dicFileName) { var dicPath = Path.Combine(Server.MapPath("/File"), dicFileName); string dicStr; using (var fs = new StreamReader(dicPa…
个别时候,我们需要一种多语种切换方案. 我的方案是这样的: 1.使用文本文本存储多语言元素,应用程序启动时加载到内存表中: 2.应用程序启动时从配置文件加载语种定义: 3.所有窗体继承自一个Base基类窗体,窗体加载时根据全局语种变量到内存表中加载多语言元素并赋值给有Text等文本属性的对象. 4.关于数据库字段的多语言显示,我目前是使用一个LL(本地)和一个LI(国际)字段共2个字段来记录2种语言数据,并在相关查询语句中根据全局语种变量加载. 这样,不管是软件页面元素,还是存储的数据,都能支持…
最近在做将一个系统多语言化的项目,系统使用的是ASP.NET,直接使用了一种已有的方案:在页面渲染时采用正则表达式替换{XXX:001 确定}格式的标记.但是这个方式增加了服务端的字符串处理,对页面性能有影响. protected override void Render(HtmlTextWriter writer) { System.IO.StringWriter sw = new System.IO.StringWriter(); HtmlTextWriter htmltw = new Ht…
有时候一个项目需要连接多个数据库,以实现不同数据库的数据在同个项目的共享. 如果已经安装了nop,则需要在第二个数据库新建一个表,nop现在无法自动通过迁移来实现第二个或者更多数据库,所以这点需要我们手动去操作. 1.在SQLServer新建一个数据库,我这里新建的是TestDb,表为TestTable. USE [TestDb] GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TABLE [dbo].[TestTable](…
编写 Win32 多语言用户界面应用程序 Windows 2000 针对全球市场制定了新的增强支持标准,提供了许多国际化功能,例如完全支持 Unicode.预设支持数百种语言以及用于从右向左语言的镜像技术.在 Microsoft Systems Journal (MSJ) 中已经发表了多篇文章来说明如何针对 Windows 2000 来编写 Unicode.复杂脚本以及镜像的应用程序. Windows 2000 多语言用户界面(也称为 MUI)是 Windows 2000 中一个最有用的国际化功…
1.先看c语言枚举类型 1.c语言定义枚举类型,每一个枚举元素都是一个整数2.注重数据类型,没有数据类型限定3.相邻枚举元素相差整数4.可以通过整数访问,不够安全 2.上代码: 1 #include<stdio.h> 2 #include<stdlib.h> 3 4 /* 5 6 1.c语言定义枚举类型,每一个枚举元素都是一个整数 7 2.注重数据类型,没有数据类型限定 8 3.相邻枚举元素相差整数 9 4.可以通过整数访问,不够安全 10 11 */ 12 enum color…
1.安装ng2-translate npm install ng2-translate --save 2.app.moudle.ts 引入模块,在下方新增方法 import { TranslateModule, TranslateStaticLoader, TranslateLoader } from 'ng2-translate/ng2-translate'; import { TranslateService } from 'ng2-translate'; 在@ngmodule import…
今天,我能够自称是一个混IT的人,并能以此谋生,将来大家能一次谋生.都要感谢两个人:克劳德.香农和约翰.冯.诺依曼,是他们发现了全部的数字化信息,不论是一段程序,一封email.一部电影都是用一连串的1和0进行编码的:是他们发现了我们能够利用一个预先编写好的程序控制机器.并使之完毕我们期望它完毕的动作.建议大家在心里默念三遍他们的名字,以示敬仰. 当然,假设让你们带着如今的知识回到他们的那个时代,那么就没有什么图灵奖了. C语言程序设计是我们的专业基础课.可是C语言本身却是一个非常强大的工具,它…
由于NopCommerce是纯英语环境,给英语不好的管理人员带来诸多不便. NopCommerce支持多语言环境,所以我们只要安装中文语言包,让NopCommerce支持后台中文操作环境. 首先先下载Nopcommerce3.2中文语言环境包(下载地址:http://pan.baidu.com/s/1bncTBkF)   1.增加中文语言环境 1.1 打开后台"Configuration"->"Languages" 1.2 选择"Add new&qu…
同时兼容这么多需求的解决方案 我想到的 只有通过 动态切换加载资源字典  前端用绑定的模式 达到托管最大化 多语言举例 我编辑了 两个 语言包 一个中文 一个英文  (语言包这个最好用T4 写个模板,这样添加新语言接口的时候不会遗漏,只是建议) en-us.xaml <ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://s…
❝ 本文章共3470字,预计阅读时间5-10分钟. ❞ 国际化-前言 每个开发者能希望编写的程序可以让全世界的用户使用,它要求从产品中抽离所有地域语言,国家/地区和文化相关的元素.换种说法,「应用程序」的功能和「代码设计」时考虑在不同地区运行的需要,其代码适应不同区域要求.开发这样的的过程,就称为国际化( internationalization),简称i18n. ❝ i18n(其来源是英文单词 internationalization的首末字符i和n,18为中间的字符数)是"国际化"…
实现多国语言有许多种实现方案,无外乎是一种字符串替换技术,将界面控件的文本标签替换成相应语言的文字..NET Windows Forms实现多国语言的方法有以下几种: 1 .NET的方案,使用资源文件 分别做三个语言的资源文件,比如String.resx,String.zh-cn.resx,String.zh-tw.resx,编译程序集,运行时用下面的代码设置程序的语言区域. string languageName="zh-cn"; Thread.CurrentThread.Curre…
一 前言 界面支持多种语言,在使用ASP.NET自带的多语言方案时遇到下列问题: 在做管理类的功能时,有添加.修改和查看页面,需要支持多语言的控件基本相同,但要维护多处,产生冗余(ASP.NET有共享的资源,但它是全局的,不能分 模 块,我们不能所模块的信息入在全局资源中): 在页面中必须要指定资源文件中的KEY: 当页面慢来慢多时,页面与资源的匹配实在难以维护: 所以我认为一个理想的支持多语言框架,需要有以下特性: 分模块解决数据冗余问题: 自动匹配页面与资源文件之间的联系: 易于维护,能通过…
RDIFramework.NET V2.9版本多语言的实现 现在是国际化时代,软件也不能落后.一个公司里很可能会有老外,也可能有台湾的朋友,他们用软件的习惯都不一样,若同样一个软件同时能适应多种语言文化,那是想当的理想了,最起码能比较完善的支持英文版本,大家用起来也会舒服一些. RDIFramework.NET框架中的多语言包,目前是按XML文件的方式进行组织,方便用户自由定义语言包.XML 语言包的好处主要就是客户修改起来容易,直接用记事本就可以修正了,没必要又重新编译源码啥的,非常省事.我们…
声明:以下内容非本人原创,转载于别处.拿出来只是分享给FY们,不喜勿喷!原创地址http://blog.yorkxin.org/posts/2009/03/15/fundamental-c-with-xcode/如何用 OS X 的 Xcode 写 C 语言程序(这篇是给新手朋友看的) 如果你在Windows习惯使用Visual C++ 或Dev-C++的话,到了Mac OS X可能会突然不知道要怎么写程式,尤其当你已经用Visual C++的Debugger用得很上手的了:如果这篇只是要教你怎…
C#多语言 方案1:http://blog.csdn.net/suncherrydream/article/details/43234059 http://blog.itpub.net/12639172/viewspace-676735/ 方案2:http://download.csdn.net/download/qiujialongjjj/5268168 注册 启用win7的防火墙,禁止vs2013联网. Visual Studio Ultimate 2013 KEY(密钥):BWG7X-J9…
转载请留下本文原始链接,谢谢.本文会不定期更新维护,最近更新于2013.09.17.   http://blog.sina.com.cn/s/blog_5b6cb9500101bplv.html         一.方案选择   U3D项目的UI方案总的来说就三个,NGUI.EZGUI.用U3D原生UI.   U3D官方说的新UI系统迟迟不出来,在新UI系统出来之前,任何项目使用U3D原生UI做技术方案的就是找死.那一套可以说未经过任何优化的UI系统简直要让人抓狂,且不说其运行效率,各种STYL…
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 企业微信移动端项目中有需求要展示数据趋势的可视化图表,经过调研,最终决定以单页面 H5 来完成,对 APP 里的一些使用 H5 实现的功能模块,一般体验都比原生差,那么怎么提高h5加载速度?优化 h5 体验? 适用场景:需要快速迭代.客户端难实现的.用作展示的功能模块,例如可视化图表. 一.为什么 H5 体验糟糕 为什么打开一个 H5 页面会有一长段白屏时间?因为它做了很多事情,大概是: 初始化 webview -> 请求页面 ->…
转载请留下本文原始链接,谢谢.本文会不定期更新维护,最近更新于2013.09.17.   http://blog.sina.com.cn/s/blog_5b6cb9500101bplv.html         一.方案选择   U3D项目的UI方案总的来说就三个,NGUI.EZGUI.用U3D原生UI.   U3D官方说的新UI系统迟迟不出来,在新UI系统出来之前,任何项目使用U3D原生UI做技术方案的就是找死.那一套可以说未经过任何优化的UI系统简直要让人抓狂,且不说其运行效率,各种STYL…
让程序支持多语言,一般把需要显示的字符串保存在一个资源类的static属性中. <!--[if !supportLists]--> <!--[endif]--> 微软的WPF程序多语言支持官方解决方案:使用Resource,并把Resource按语言编译成独立DLL,程序会根据系统当前语言设置,自动加载最合适的资源.(这种方法灵活性较差,而且不能满足多样的需求,于是网上各种多语言方案纷至沓来.)这里有一篇对官方方案的进一步解释. 使用XML保存语言文件:放进来只是因为网上的确有这么…
一.背景 随着经济全球化的深入,许多中国品牌纷纷开始在海外市场开疆扩土.实现全球化意味着你的产品或者应用需要能够在全球各地的语言环境使用,我们在进行海外业务的推进时,需要面对的最大挑战就是多语言问题.实现好多语言系统的本地化,更方便快捷的修改多语言文案能让你的产品在各个国家地区里有更强的产品竞争力和更好的用户体验以及更低的维护成本.以此为目标,在vivo外销项目的发展过程中我们经过多次迭代,最终结合公司中间件的能力,实现了一套完整的多语言解决方案. 二.多语言文案系统的优势 2.1 传统的多语言…
继上个版本“RDIFramework.NET V2.9版本”的推出,受到了重多客户的认可与选择,V2.9版本是非常成功与稳定的版本,感谢大家的认可与长期以来的关注与支持.V3.0版本在V2.9版本的基础上做了重大更新,如:新增了“序列管理”.“系统参数管理”.“查询引擎与定义与管理”.”消息集中管理“.Web还新增了“MVC版本”.代码生成器可以支持WebUI(WebForm.MVC两种方式)的生成,以及对框架与工作流在MySql下进行了通测完美支持了MySql等等大量新增与重构的东西,在后面的…
对于一个用户群面向全球的的应用来说,不得不考虑国际化的问题.当然,即便是刚刚起步的小应用,如果有心搞大,也应该提前设计国际化的方案. 本篇讲述使用AngularJS构建的应用的简单国际化方案,准确的说,是国际化服务.... i18n与l10n i18n是Internationalization得缩写,取第一个字母和最后一个字母,以及中间省略的字母数目,即i18n,类似的l10n是Localization得意思. 通常i18n是国际化的意思,就是在不改变源码的情况下,通过某些简单的配置就能适应不同…
RDIFramework.NET  V2.9版本 WinFom部分新增与修正的功能 转眼间RDIFramework.NET框架走了快6个年头了,随着一个版本一个版本的升级改造,现在已经越来越完美了.使用的客户也越来越多,经受住了大量实战项目的考验! RDIFramework.NET V2.9 WinForm版在2.8的基础上增加与修正了大量功能.包括:对多语言的支持.模块操作权限项设置.增加起始页(对常用功能列表在起始页展示).新增新的字典字典管理界面,提供对“树”类型的数据字典的展示.增加“数…