资源文件没有考虑在内

时间:2011-01-18 10:40:01

标签: c# asp.net localization

我正在做一个ASP.NET网站。我想本地化它。 目前我是这样的: - 2个ressources文件(在localRessources文件夹中) - 母版页(FR& EN)中的2个链接按钮可手动更改语言

当我加载网站时,我会查找用户浏览器文化信息,并将当前的文化信息设置为此,并将此文化信息ID保存在会话状态中。 之后,为了填写我的网站,我得到了这个ID,并要求BD提供正确的内容。这很好。

不起作用的是ressource文件。当我单击按钮或手动更改浏览器的文化时,它不会在两者之间发生变化。

经过一些测试,我可以说它来自我的代码。事实上,在我评论我的代码并改变浏览器的文化后,我的内容设置得很好......

所以现在我的问题是:当我问我的BD时,如何改变客户的文化以用来纠正文化?哪个代码?

我需要你的帮助。 如果看起来不太清楚,请询问详细信息; - )

Skilpit

2 个答案:

答案 0 :(得分:0)

您在哪里设置当前的CultureInfo?

在MVC中,您应该在Initialize期间(在Controller类中)设置它。

protected override void Initialize(System.Web.Routing.RequestContext requestContext) {
     System.Threading.Thread.CurrentThread.CurrentCulture = 
         System.Threading.Thread.CurrentThread.CurrentUICulture = 
         new CultureInfo("en-US");
}

在ASP.NET WebForms中,您应将其设置为InitializeCulture()

答案 1 :(得分:0)

好的,现在好了。我找到了tuto。这是一个非常好的。 吉迪恩。你的答案也很好。我试图在我的母版页面中添加Initialize。什么当然不可能; - )