本地化dbms演示数据

时间:2010-09-26 09:43:50

标签: sql localization internationalization globalization

我正在开发一个应该使用多种语言(英语,德语,法语,俄语)的Windows移动应用程序。

此应用程序即将向客户展示(德国人,俄罗斯人......),我们希望根据其设置的文化生成数据。

那么:有没有人想过一种创建数据的方法,而不是将要在运行时插入到dbms中?

例如:英文版的VAT增值税描述为“增值税17.5%”,价值17.5,德语版“Mehrwertsteuer 19%”,价值19,法语版“TVA 19.6%”,价值19.6

提前致谢

修改

我承认我不是很清楚。我需要一组数据进行本地化。我需要一种机制,以某种方式读取这个“准备好的”本地化数据并插入到dbms中。

我的第二个想法是使用一个XML文件,它对所有语言都有相同的结构(但当然是不同的值),例如

datafile.en-US.xml

datafile.de-DE.xml

您如何看待这个?

1 个答案:

答案 0 :(得分:0)

我不太清楚你的目标是什么,所以我可能会在这里弄错...无论如何,如果你计划在不同国家分发你的Windows Mobile客户端应用程序,并且一种语言版本可以在一个国家/地区使用,我会建议使用资源文件而不是SQL DB。您可以将“VAT {0}”,“TVA {0}”等消息放在运行时格式化(取决于编程语言看起来会有所不同,请在下面找到C#/ .Net示例),保留有效的文化格式。

var vat = string.Format(vatPatternStringFromResources, vatValueFromResources.ToString("P")); // "P" means percentage format

如果您仍需要将增值税值添加到SQL以供参考,您只需添加一个十进制列,该列将包含VAT表的外键或仅增值税值...

更新不同的增值税值

问题在于,增值税价值不仅因国家不同而且还取决于您购买的商品...因此需要以可配置的方式存储它们......好吧,如果您想使用SQL DB,您可以使用额外的增值税表,PK跨越两列:一个CountryID(国家表的FK)和第二个RateID(整数),两者都唯一标识国家的给定增值税率...