我发展我的第一个多语言C#网站,一切都只是一个重要方面确定要去。我不是100%肯定是最好的选择是什么存储字符串(通常是单个字),将通过代码的网页背后我的代码进行翻译。

在我准备用asp.net资源文件页面上的文字网站的前端。这部分是好的。然而,这个网站将会使XML调用和XML响应是永远只用英文。我一直在考虑一个Excel工作表以将由XML分解成不同的语言方式返回的所有的话,但我不知道如何以最佳方式存储/访问这些信息。大致有80个字×7种语言。

我想创建由我的Global.asax文件,在应用程序运行时创建的每个语言的字典中的对象,只是保持它存储在内存中。这样做的有利的一面是,字典对象将只需要创建一次(直到重新启动IIS),并且可以由任何用户而无需重建但不足之处是我有7个字典对象不断存储在存储器中来访问。该服务器是一个双赢2008的64位的RAM 4GB所以我应该甚至关注通过使用此方法占用存储器?

你们有什么想将存储/检索将由所有用户使用不同语言的单词的最佳方式?

感谢您的输入。

有帮助吗?

解决方案

这是你说的话,你在看560个字这需要根据区域不同。这是沧海一粟。你已经考虑资源文件的方法是适合目的,我会推荐使用它们。它们集成了控制,所以你会从他们身上发挥的淋漓尽致。

如果它确实麻烦你,你可以让他们在滑动缓存,即滑动20分钟例如缓存,但我看不出什么毛病你选择在这个解决方案。

OMO

干杯,

安德鲁

P.S。有一个通过这个阅读,看你如何找到并绑定在不同的资源文件值的控制和文字和编程使用。

http://msdn.microsoft.com/en-us/magazine /cc163566.aspx

其他提示

只要你意识到这样做则的影响是,在存储器中存储这些数据将被罚款(只要你有足够的这样做)。一旦你知道什么是适合当前用户再折腾到内存中就可以了。你可以看看像Memcached的的Win32或速度虽然卸载存储到另一个应用服务器。使用这甚至在您的本地应用程序暂且当它是时候该推到另一台服务器或增加你的应用程序,你有你的缓存层中定义一个清晰的关注分离的方式。而且要记住,你支持你存储在内存中的更多的东西了更多的语言。继续被存储在内存中的唯一的应用程序服务器上的数据量的眼睛,因为这可能成为压倒一切的时间。此外,请确保您所使用的密钥是特定的语言。否则,你可能会发现,你在德国的存储菜单英文用户。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top