2017-09-01 75 views
0

我有一个web表单页面,并希望使用资源文件和元标签控件中的元代码设置语言。参数来自其他地方。不要自动将文化从浏览器中自动绑定

<asp:Label ID="lblTitle" runat="server" Text="" meta:resourcekey="lblTitle"></asp:Label> 

但是,通过这种方式(元),它将从浏览器中读取首选语言并自动设置文化。例如,如果来自broswer的受保护语言是en-AU,那么它将从我的资源文件xxxx.aspx.en-AU.resx开始读取信息。 我不想这样,因为我想手动控制所有东西。我不得不从后面的代码中明确地处理这个问题。

我可以关闭浏览器的自动绑定吗?

回答

2

在web.config中,您可以为您的应用程序强制使用特定的文化。对于en-US,你可以使用这个。

的Web.config

<system.web> 
    <globalization culture="en" uiCulture="en-US"/> 
    ... 
    </system.web> 

在您的代码隐藏,然后你可以随意使用覆盖:

var lang = "en-AU"; 
Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture(lang); 
Thread.CurrentThread.CurrentUICulture = new CultureInfo(lang);