如何告诉我的网页使用特定的 UI 文化?

发布于 2024-09-24 15:34:24 字数 866 浏览 6 评论 0原文

我可以告诉我的页面使用特定的CultureInfo,例如

System.Globalization.CultureInfo.CreateSpecificCulture("en-US");

上面的代码仅设置CultureInfo,而不是UICulture如何告诉页面绕过浏览器的提示并使用特定的资源,以便所有GlobalResource都可以应用于正确的文化?

在上面的代码中,并将瑞典语作为我的第一个浏览器语言,我得到:

System.Globalization.CultureInfo.CurrentUICulture.Name --> sv-SE
System.Globalization.CultureInfo.CurrentCulture.Name --> en-US

我需要设置 CurrentUICulture 以便进行所有本地化,在本例中,使用英语而不是瑞典语,就像浏览器设置为:

替代文本
(来源:balexandre.com

I can tell my page to use a certain CultureInfo like

System.Globalization.CultureInfo.CreateSpecificCulture("en-US");

The code above only set's the CultureInfo, not the UICulture, how can I tell the Page to bypass what the browser says and use a specific one, so all GlobalResource's could be applied to the correct culture?

in the code above and having Swedish as my first browser language I get:

System.Globalization.CultureInfo.CurrentUICulture.Name --> sv-SE
System.Globalization.CultureInfo.CurrentCulture.Name --> en-US

I need to set the CurrentUICulture so all localization is made, in this case, in English and not Swedish, like browser is set to:

alt text
(source: balexandre.com)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

扛刀软妹 2024-10-01 15:34:24

尝试

System.Threading.Thread.CurrentThread.CurrentCulture = System.Globalization.CultureInfo.CreateSpecificCulture("en-US");
System.Threading.Thread.CurrentThread.CurrentUICulture = System.Globalization.CultureInfo.CreateSpecificCulture("en-US");

我在页面的 OnInit 中尝试了它,它正确加载了资源。

编辑:或者您可以尝试在 web.config 中进行设置,如下所示:

http://msdn.microsoft.com/en-us/library/bz9tc508.aspx

Try

System.Threading.Thread.CurrentThread.CurrentCulture = System.Globalization.CultureInfo.CreateSpecificCulture("en-US");
System.Threading.Thread.CurrentThread.CurrentUICulture = System.Globalization.CultureInfo.CreateSpecificCulture("en-US");

I tried it in OnInit of my page and it loaded the resources properly.

EDIT: or you could try setting it in the web.config as shown here:

http://msdn.microsoft.com/en-us/library/bz9tc508.aspx

傲世九天 2024-10-01 15:34:24

MSDN 网站上有一个示例解释了如何执行此操作: 如何:设置ASP.NET 网页全球化的文化和 UI 文化

本质上,您可以设置当前执行线程的 CurrentCultureCurrentUICulture 属性(请参阅文章了解完整代码示例,这是摘录):

Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture(selectedLanguage);
Thread.CurrentThread.CurrentUICulture = new CultureInfo(selectedLanguage);

There's an example on the MSDN website that explains how to do this: How to: Set the Culture and UI Culture for ASP.NET Web Page Globalization

Essentially you can set the CurrentCulture and CurrentUICulture properties of the currently executing thread (see the article for the full code example, this is an extract):

Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture(selectedLanguage);
Thread.CurrentThread.CurrentUICulture = new CultureInfo(selectedLanguage);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文