我正在用C#创建一个ASP.NET Web应用程序,并且必须将应用程序本地化为英语和法语。我创建了两个资源文件:App_GlobalResources \ Resources.resx和包含英语和法语内容的App_GlobalResources \ Resources.fr.resx。
当我将浏览器设置为法语(fr_FR)运行应用程序时,法语内容会在标记中正确显示。
在代码隐藏中,当我从资源访问值时,它仅返回默认的英语值。 e.g。
this.CompanyName.Text = string.Format(App_GlobalResources.Resources.CompanyLocationsFormat,companyName);
调试应用程序显示CurrentCulture和CurrentUICulture都正确设置为fr_FR。
任何人都可以解释如何使用文化适当的资源文件来获取代码吗?
非常感谢
(C#,ASP.NET 3.5 SP1,Visual Studio 2008,IE 8.0.7600)
答案 0 :(得分:0)
您确定法国资源文件中是否存在此特定资源(CompanyLocationsFormat)?如果缺少资源,它将回退到默认资源。
答案 1 :(得分:0)
您是否在web.config的<system.web>
部分中有此内容?
<globalization culture="auto" uiCulture="auto" />