我得到了一个本地化网站的任务,并将所有字符串值存储到XML文件中。 原因是让sys。 admin通过编辑XML文件来自行更改本地化值。
我应该在应用程序启动时读取XML文件的内容并存储在内存中吗?我想这种情况有一个最好的做法。 任何帮助将不胜感激!
谢谢!
答案 0 :(得分:2)
最佳做法是使用ASP.NET提供的infra-structure进行本地化/全球化(http://msdn.microsoft.com/en-us/library/c6zyy3s9.aspx)。对于本地化,它基本上在网页中使用隐式/显式语法 - 例如,
<asp:Button ID="Button1" runat="server" Text="XY" meta:resourcekey="Button1" />
<asp:Button ID="Button1" runat="server" Text="<%$ Resources:WebResources, Button1Caption %>" />
现在,您希望使用自定义xml文件 - 因此您所要做的就是提供将从xml文件中查找资源值的代码。这可以通过编写custom resource provider来实现。
请参阅this文章,该文章解释了构建资源提供程序以从sql数据库中读取本地化字符串 - 您可以使用该示例构建提供程序以从xml文件中读取。
答案 1 :(得分:0)
我不知道你的老师或项目是否需要这个,但是全球化/本地化.NET应用程序的公认惯例是使用字符串资源,并使用带有附属程序集的资源程序集: