以前的开发平台里,是用xml语言包实现了多语言功能,现在新的平台里进行了调整,把多语言包资源放在数据库表里实现了。

我们系统预留了多语言的配置全局变量、可以通过配置这个参数达到切换多语言的目的

我们在选项管理里增加一个多语言选择的选项目,然后有哪些语言资源就加上去

下面的表是多语言的数据库设计表结构

下面图是多语言的数据库里的资源设置情况

这个是多语言的设置管理界面参考

下面是多语言的管理窗体位置

多语言例子程序参考:

        /// <summary>
/// 获取多语言
/// </summary>
public void GetLanguage()
{
this.grbLanguage.Text = this.GetLanguage(this.grbLanguage);
this.lblLanguageCode.Text = this.GetLanguage(this.lblLanguageCode) + ":";
this.lblMessageCode.Text = this.GetLanguage(this.lblMessageCode) + ":";
this.lblCaption.Text = this.GetLanguage(this.lblCaption) + ":";
this.btnAdd.Text = this.GetLanguage(this.btnAdd);
this.btnSave.Text = this.GetLanguage(this.btnSave);
this.btnCancel.Text = this.GetLanguage(this.btnCancel);
} public string GetLanguage(Control control)
{
string result = string.Empty;
string key = this.Name + "." + control.Name;
string caption = control.Text;
result = ClientCache.Instance.GetLanguage(this.UserInfo, key, BaseSystemInfo.CurrentLanguage, caption);
return result;
}

多语言接口程序参考:

//-----------------------------------------------------------------
// All Rights Reserved , Copyright (C) 2015 , Hairihan TECH, Ltd.
//----------------------------------------------------------------- using System.Data;
using System.ServiceModel;
using System.Collections.Generic; namespace DotNet.IService
{
using DotNet.Utilities;
using DotNet.Model; /// <summary>
/// ILanguageService
/// 多语言接口
///
/// 修改纪录
///
/// 2015.02.24 版本:1.0 JiRiGaLa 创建主键。
///
/// <author>
/// <name>JiRiGaLa</name>
/// <date>2015.02.24</date>
/// </author>
/// </summary>
[ServiceContract]
public interface ILanguageService
{
/// <summary>
/// 获取实体
/// </summary>
/// <param name="userInfo">用户</param>
/// <param name="id">主键</param>
/// <returns>实体</returns>
[OperationContract]
BaseLanguageEntity GetObject(BaseUserInfo userInfo, string id); /// <summary>
/// 添加
/// </summary>
/// <param name="userInfo">用户</param>
/// <param name="entity">实体</param>
/// <param name="statusCode">返回状态码</param>
/// <param name="statusMessage">返回状态信息</param>
/// <returns>主键</returns>
[OperationContract]
string Add(BaseUserInfo userInfo, BaseLanguageEntity entity, out string statusCode, out string statusMessage); /// <summary>
/// 编辑
/// </summary>
/// <param name="userInfo">用户</param>
/// <param name="entity">实体</param>
/// <param name="statusCode">返回状态码</param>
/// <param name="statusMessage">返回状态信息</param>
/// <returns>影响行数</returns>
[OperationContract]
int Update(BaseUserInfo userInfo, BaseLanguageEntity entity, out string statusCode, out string statusMessage); /// <summary>
/// 设置多语言
/// </summary>
/// <param name="userInfo">用户</param>
/// <param name="messageCode">语言编号</param>
/// <param name="enUS">英文</param>
/// <param name="zhCN">简体中文</param>
/// <param name="zhTW">繁体中文</param>
/// <returns>影响行数</returns>
[OperationContract]
int SetLanguage(BaseUserInfo userInfo, string messageCode, string enUS, string zhCN, string zhTW); /// <summary>
/// 按编号获取多语言
/// </summary>
/// <param name="userInfo">用户</param>
/// <param name="messageCode">语言编号</param>
/// <returns>列表</returns>
List<BaseLanguageEntity> GetLanguageByMessageCode(BaseUserInfo userInfo, string messageCode); /// <summary>
/// 批量打删除标志
/// </summary>
/// <param name="userInfo">用户</param>
/// <param name="ids">主键数组</param>
/// <returns>影响行数</returns>
[OperationContract]
int SetDeleted(BaseUserInfo userInfo, string[] ids); /// <summary>
/// 批量保存
/// </summary>
/// <param name="userInfo">用户</param>
/// <param name="list">列表</param>
/// <returns>影响行数</returns>
[OperationContract]
int BatchSave(BaseUserInfo userInfo, List<BaseLanguageEntity> list);
}
}

C#.NET 大型企业信息化系统集成快速开发平台 4.2 版本 - 基于数据库资源的多语言实现的更多相关文章

  1. C#.NET 大型企业信息化系统集成快速开发平台 4.1 版本 - 面向数据库SQL语句的应用开发二

    很多传统企业.包括系统集成类的IT企业,若不是从事专业软件开发领域的,能做出一套适合本公司企业信息化的灵活的信息系统还是很有难度的,还有一些已经多年不写程序的资深开发人员,初学者,都难把一个整套系统实 ...

  2. C#.NET 大型企业信息化系统集成快速开发平台 4.2 版本 – 员工离职管理

    C#.NET 大型企业信息化系统集成快速开发平台 4.2 版本 – 员工离职管理 当公司有几万人,上千家加盟网点,几个庞大的直属分公司后,系统账户的有效管理也是一个头疼的问题,把所有的帐户及时进行科学 ...

  3. C#.NET 大型企业信息化系统集成快速开发平台 4.2 版本 - 适合大型企业信息化应用使用的角色权限管理体系

    每个人外表看看都没什么大区别.但是内在的知识.处理问题的能力.解决问题的能力.头脑灵活性都会有很大的差距.软件组件也是一样,有些组件编写厉害,想问题深入,能处理的难题也多,构思巧妙. 通用快速开发平台 ...

  4. C#.NET 大型企业信息化系统集成快速开发平台 4.2 版本 - 几十套业务系统集中统一授权管理实现经验分享

    由于这几年互联网电商的快速发展,快递公司也进入了快速发展的绝好快速成长期.随着社会的强劲需求公司的业绩年年攀新高.快速发展的公司都需要有强大的IT信息系统,硬件设备基本上款到了货也可以到了,但是软件系 ...

  5. C#.NET 大型企业信息化系统集成快速开发平台 4.2 版本 - 大型软件系统客户端数据同步的问题解决

    作为一个完整的整体信息化解决方案需要有足够强大的各种功能,这些功能相对独立,又互相依存.当有需要这样的功能时可以随时拿出来用,适当修改一下就可以满足要求.只有这样才能快速开发各种信息化系统,才能满足各 ...

  6. C#.NET 大型企业信息化系统集成快速开发平台 4.2 版本 - 面向全国标准省市县行政数据基础之上的组织机构管理

    由于信息系统庞大.各种业务子系统.各种开发语言开发的业务逻辑.各种年代维护的代码.各种参差不齐的历史遗留信息系统,面向全国的业务系统,面向某个领域的汽运管理信息系统,面向内部的业务系统,面向外部的各种 ...

  7. C#.NET 大型企业信息化系统集成快速开发平台 4.1 版本 - 如何才能成为全国知名软件组件

    往往我们看到一个好用的工具.就能知道制作这个工具有多少不容易,使用好这个工具也有多少不容易? 通用快速开发框架同样也是经过多年的完善改进才到了今天的稳定成熟度,知名程度,为什么能成为全国有名的软件组件 ...

  8. C#.NET 大型企业信息化系统集成快速开发平台 4.2 版本 - 防止暴力破解密码、提高大型信息系统安全

    几十万人使用的系统.覆盖全国.每天营业额上好几个亿的.若信息安全方面太薄弱了.那将会是致命的打击.甚至威胁到企业的正常运转.从国家层面到企业级别大家都在重视信息的安全.可控. 运行速度慢一点点可以忍受 ...

  9. C#.NET 大型企业信息化系统集成快速开发平台 4.2 版本 - 外部服务调用、内部服务调用优化,面向服务化的

    现在的信息系统越来越复杂,越来越庞大,不仅需要内部是一个整体,而且还需要提供很多对外的服务调用. 1:别人如何调用最方便?用不同的开发语言调用.例如app.手持设备.服务器.2:服务的返回状态是什么样 ...

随机推荐

  1. [注意]SerialPort操作PCI-1621D多串口卡,出现异常"参数不正确"

    开发LED大屏显示.40-20mA模拟量输出的时候,经常要与串口打交道.但是Windows自带的SerialPort串口操作组件貌似兼容性 不是太好,或是SerialPort本身有BUG,在操作PCI ...

  2. ASP.NET MVC+EF框架+EasyUI实现权限管理系列(24)-权限组的设计和实现(附源码)(终结)

    ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇)   (1):框架搭建    (2):数据库访问层的设计Demo    (3):面向接口编程   (4 ):业务逻辑层的封装    ...

  3. browserify学习总结

    前言 在未接触browserify,虽然我知道它是一个前端构建工具,但还是有几个疑问: 1. browserify出现的日期? 2. 能构建哪些文件? 3. 附加的browserify代码体积是多大? ...

  4. 浅谈HTML5单页面架构(三)—— 回归本真:自定义路由 + requirejs + zepto + underscore

    本文转载自:http://www.cnblogs.com/kenkofox/p/4650310.html 不过,这一篇,我想进一步探讨一下这两个框架的优缺点,另外,再进一步,抛开这两个框架,回到本真, ...

  5. JavaScript基本语法(一)

    前段时间学习了HTML和CSS,也实战了一些结构较简单的项目.在还没运用到JS的知识时,做出来的效果总觉得少了些什么.虽然总体布局与一些基本的特效,也能用HTML+CSS就能完成.但如今开始进入Jav ...

  6. SharePoint 2013 工作流设计之Designer 使用“可视化视图”

    SharePoint 2013增强了工作流功能,而Designer里面也添加了可视化设计视图,也就是类似Visio的设计视图(需要Visio 2013支持),下面我们简单介绍下,在可视化视图下,使用工 ...

  7. CoreGraphics-线段常见属性及渲染模式介绍

    线段常见属性: 1.线宽 2.线头样式 3.接头样式 4.颜色(包括描边颜色和填充颜色) override func draw(_ rect: CGRect) { // 获取图形上下文对象 let c ...

  8. iOS 系统分析(一) 阅读内核准备知识

    ➠更多技术干货请戳:听云博客 0x01 iOS体系架构 1.1 iOS 系统的整体体系架构 用户体验( The User Experience layer ):SpringBoard 同时支持 Spo ...

  9. IOS开发之功能模块--输入框随着键盘的位置移动而移动

    废话不多说,先直接上效果图: 先熟悉一下在Cocoa框架中会用到的key键: 然后直接上Demo的源码截图: 看代码之前,补充说一句,Demo中的文本框以及文本框的背后灰色的View是通过storyb ...

  10. windows下用QTwebkit解析html

    环境 windows7 + VS2010 + QT5.2_opengl 配置开发环境 1.安装VS2010 2.安装QT 5.2 QT网站:http://qt-project.org/download ...