Omu*_*Omu 6 asp.net-mvc localization asp.net-core-mvc asp.net-core
默认情况下,在MVC 6中,CultureInfo.CurrentCulture是Windows使用的,而不是浏览器.
在MVC 5中,我可以将其放入web.config:
<globalization culture="auto" uiCulture="auto"/>
Run Code Online (Sandbox Code Playgroud)
这将使得与CultureInfo.CurrentCulture浏览器(Accept-Language标题)指定的相同.
有没有办法配置MVC 6应用程序默认使用浏览器文化?
您需要安装Microsoft.AspNet.Localization NuGet 包并将以下内容添加到您的Startup.cs:
public void Configure(IApplicationBuilder app)
{
    app.UseRequestLocalization();
    app.UseMvc();
}
Run Code Online (Sandbox Code Playgroud)
默认情况下,它将注册AcceptLanguageHeaderRequestCultureProvider为文化提供者,这应该相当于旧enableClientBasedCulture设置。
更新:
根据您的评论,由于您使用的是 RC1 版本,因此您必须为该方法提供默认区域性。例如:
app.UseRequestLocalization(new RequestCulture("en"));
Run Code Online (Sandbox Code Playgroud)