如何将默认语言传递到注册页面?

时间:2018-04-26 15:14:07

标签: asp.net-core aspnetboilerplate

有没有办法将特定的UI语言传递给注册页面?这是来自网站,我希望它是defaut选项。

2 个答案:

答案 0 :(得分:1)

如果查看浏览器发送的请求标头,则包含“Accept-Language”。它看起来像这样:

en-US,en;q=0.9,es-419;q=0.8,es;q=0.7

一般来说,偏好按降序运行,所以在这里,浏览器会说它更喜欢美国英语。更多关于q值的含义:What is q=0.5 in Accept* HTTP headers?

您可以通过控制器访问此值。

Request.Headers["Accept-Language"]

答案 1 :(得分:1)

您可以使用这些标题发送文化

c=...
uic=...

https://github.com/aspnetboilerplate/aspnetboilerplate/blob/dev/src/Abp.AspNetCore/AspNetCore/Localization/AbpLocalizationHeaderRequestCultureProvider.cs#L12

和MVC使用文化参数如下

/register?culture=tr  

必须是查询字符串的第一个参数

和最后一个选项;你总是可以覆盖AbpUserRequestCultureProvider

https://github.com/aspnetboilerplate/aspnetboilerplate/blob/dev/src/Abp.AspNetCore/AspNetCore/Localization/AbpUserRequestCultureProvider.cs

<强>更新

根据实现,它接受查询字符串参数作为文化,如下所示

?culture=es-MX&ui-culture=es-MX

请参阅https://github.com/aspnetboilerplate/aspnetboilerplate/issues/2103