【发布时间】:2016-11-29 20:30:08
【问题描述】:
我正在尝试为用户提供更改我的 asp.net mvc 网站的 UI 语言的选项。我计划向用户提供 2 种语言,即:英语和荷兰语
为此,我编辑了我的 web.config 文件并添加了:
<globalization enableClientBasedCulture="true" culture="auto" uiCulture="auto"/>
现在我添加了两个文件Resources.resx(默认文件)和Resources.nl-NL.resx(荷兰语的资源文件)。
我认为资源文件是<title>@WebApplication9.App_GlobalResources.Resources.RequestTitle</title>。
当语言改变时,我正在像这样改变文化:
Thread.CurrentThread.CurrentCulture = new CultureInfo("nl-NL");
Thread.CurrentThread.CurrentUICulture = new CultureInfo("nl-NL");
但即使在语言更改为荷兰语并将文化值更改为上述指定的值后,Resources.resx 的英文值始终会显示,而不是从Resources.nl-NL.resx 获取值。
你能帮我找出我在这里缺少什么吗?
【问题讨论】:
-
只是预感...尝试将资源文件重命名为
Resources.nl.resx -
@GeorgPatscheider :我最初尝试过,但没有奏效。
-
初步故障排除证明,当我在浏览器中更改语言时,UI 语言正在更改。所以问题显然出在
Thread.CurrentThread.CurrentCulture = new CultureInfo("nl-NL");和/或Thread.CurrentThread.CurrentUICulture = new CultureInfo("nl-NL");我猜
标签: c# asp.net asp.net-mvc