系统多语言实践(一)

本文介绍了系统多语言的实践方法,包括将数据保存到表中并按模块分配ID,开发多语言管理工具,设计API Res类加载多语言数据,以及如何在C#和JavaScript中使用扩展方法进行本地化。此外,还提到了枚举的多语言处理和遵循国际化的通用规范。
摘要由CSDN通过智能技术生成
应用系统支持多语言,在有跨国业务的公司中,是个很常见的需求。一般涉及到的语言有中简、中繁、英文、日语等。本文就.Net Web平台下实现该需求做一些初步探讨。
在Asp.Net Web Form时代,微软就给出了一个解决方案。简单来讲,就是将多语言资料维护到*.{Culture Code}.resx文件中,绑定的工具根据该文件自动生成静态的多语言访问类。
这个方案,简单实用。对于一般的小项目也够用了。但是对于一个需要长期维护的产品来说,还需要考虑更多的问题。多语言从技术角度来讲,应该解决下面两个问题:
1. 多语言存储

方便维护管理,通用词汇能够公用

2. 多语言访问
方便的API, 最好透明化

如果从需求角度来讲,我认为需要分为下面两类
1. 静态多语言
即固定写在页面上的文字和提示的Message
2. 运行时多语言
系统运行时,由用户输入的多语言数据。如产品的名字,描述等

本节先从静态多语言讲起。
一. 静态多语言

1. 多语言存储

在设计上一般把数据保存到表里面,Resource Key采用int型,通过分段,分配给各个模块使用。同时保留一块作为公共段,存储通用多语言数据,如”确定”,“取消”之类的词汇。 表结构如下:

RESOURCE_STATIC

 

 

 

 

PK

栏位

类型

允许NULL

描述

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值