更改.net asp mvc 4文化信息,适用范围广

Cri*_*lho 1 globalization asp.net-mvc cultureinfo

我有一个完整的应用程序,它使用Web应用程序,数据库和一些业务逻辑层.问题是它们中的每一个都配置为使用系统文化.我需要将文化固定为所有文化中的不变量或标准文化.我已经尝试在web.config中添加全球化标签,但我仍然遇到问题,它似乎无法正常工作.

我还在我的布局页面中添加了"globalize.js"脚本,因此脚本可以像系统的其余部分一样工作,但它也不起作用.

max*_*s87 5

尝试将此代码添加到global.asax

using System.Globalization;
    using System.Threading;
    protected void Application_BeginRequest(object sender, EventArgs e)
    {

        string lang = Request.RequestContext.RouteData.Values["culture"].ToString();
        //CultureInfo culture = CultureInfo.InvariantCulture;//if need invariant
        CultureInfo culture = CultureInfo.GetCultureInfo(lang);

        Thread.CurrentThread.CurrentUICulture = culture;
        Thread.CurrentThread.CurrentCulture = culture;
    }
Run Code Online (Sandbox Code Playgroud)

适合我

  • 除非您正在创建新线程,否则应该这样做.这将在请求开始时在线程上设置区域性信息,这在大多数情况下将与业务和数据逻辑执行的线程相同. (2认同)