关于如何实现Silverlight应用程序本地化的一般建议是什么?
我首先想到的是,我们可以在资源文件之间进行选择,或者将本地化存储在数据库的资源表中。
每种方法的专家和骗局是什么?还有其他方法吗?
资源文件可以更快地渲染并减少流量,因为您不需要从Web服务中检索字符串。
从数据库中可能更容易维护。
假设我们需要实现3-4种不同的语言。你会选择什么,为什么?
答案 0 :(得分:1)
我知道这会得到很多传统的答案,但我还想提出一些完全原创的东西,我们尝试(并成功)使用附加属性而不是绑定来更有效地本地化Silverlight:
我们发现资源和绑定解决方案既繁琐又不灵活,因为它们都需要在项目中设置转换(因此需要在应用程序更改时重新部署应用程序)。
传统上,翻译是分批发送的,并由语言管理(使用唯一键,翻译笔记等)。 (有一些工具可以更轻松地转换为资源,但我们找到了更好的方法)。
我们的解决方案意味着我们在中央服务器数据库中管理本地化,但也可以在应用程序本身内提供本地化编辑器,供翻译人员在使用应用程序时使用。
资源优势:
资源缺点:
数据库优点:
数据库缺点: