我有一个全局资源文件: ContactDetails.resx。这里是网站周围使用的地址和联系方式。
我也有一个联系页面列出所有的联系方式,但根据语言的不同而变化。因此,在英国网站上,英国的联系方式将显示在顶部,而在法国网站上,法国的详细信息将显示在顶部。
有没有一种方法可以嵌套资源,引用不同资源的值中的资源值?
发布于 2012-02-10 00:02:34
如果某个资源值在法语资源文件中不存在,但在默认资源文件中存在,则系统将自动从默认资源文件中获取该值。
因此,如果您的本地化设置为fr,并且您的调用类似于:
Resources.ContactDetails.Telephone并且电话在ContactDetails.fr.resx中不存在,则它将从ContactDetails.resx获取电话值
如果所有的值都要在页面上显示,但根据本地化的不同,以不同的顺序显示,我建议不要将这些值存储在资源文件中。资源文件的变化是为了改变语言,而不是改变数据的布局。
相反,我建议将它们存储在数据库中,并在页面上有3个文本控件,如:
<asp:literal id="ltl1stTelephone" runat="server" />
<asp:literal id="ltl2ndTelephone" runat="server" />
<asp:literal id="ltl3rdTelephone" runat="server" />然后根据本地化,指定应该分配给每个控件的值。
if (System.Threading.Thread.CurrentThread.CurrentUICulture = "fr"){
.........
}https://stackoverflow.com/questions/9214255
复制相似问题