基于时区的asp.net Web窗体中的本地化

时间:2016-02-29 07:22:23

标签: c# asp.net localization

有没有办法根据我系统的本地时区在我的asp.net Web-Form中提供本地化?我想从时区更改页面的文化(CurrentCulture和CurrentUICulture)。我已经通过在网页上提供所有网站的手动链接来实现这一点...通过点击西班牙语,我们找到了一个西班牙语用户界面。我所做的是,我从该链接生成一个页面请求,并从该请求中获取语言,最后设置文化。如

protected override void InitializeCulture()
    {
        if(Request["Language"] != null)
        {
            Thread.CurrentThread.CurrentCulture = new CultureInfo(Request["Language"].ToString());
            Thread.CurrentThread.CurrentUICulture = new CultureInfo(Request["Language"].ToString());
        }
        base.InitializeCulture();
    }

现在我想在用户系统的时区帮助下做同样的事情。 如果我的问题不明确,请告诉我。

1 个答案:

答案 0 :(得分:0)

ASP.NET通过web.config部分对自动语言环境切换提供了一些原生支持。

<configuration>
  <system.web>
    <globalization culture="auto:en-US" uiCulture="fr" />
  </system.web>
</configuration>

如果可以找到匹配项,此设置会自动将ASP.NET请求切换为浏览器客户端的语言。如果浏览器未提供语言或语言无法与.NET安装的文本之一匹配,则使用回退值 - 在本例中为en-US。