vs2005已经提供webform开发时的多语言支持,就象用vs2003开发winform一样方便。
但是现在vs2005还是beta版本,在vs2003下开发asp.net的多语言版本就成了痛苦的事情。
从csdn上查到一般的解决方案是建立resx文件,然后用resourceManager根据当前CultureInfo读取对应语言。
CultureInfo设定可以利用web.config设定全局的,也可以在每页指定。动态一点的可以根据Request的用户语言信息来决定。
在开发时设计好界面后要编程替换相应语言,是个比较痛苦的过程。
设想如下:
1. 建立专用多语言工具包,自带配置文件,配置几种目标语言和缺省语言。
2. 利用DataSet的持久化来保存语言翻译结果。
3. 利用CultureLabel(继承Label控件)提供设计时控件,在设计界面下直接指定缺省语言Text和对应翻译。
4. 在控件保存属性时保存翻译结果到DataSet
5. 改变配置文件的缺省语言,直接影响Text,从而反映在整个设计界面。
6. 没有翻译时用红色提示。
开发难度不大,应该很好用 估计这两天应该能出来。