我正在开发一款多语言的asp.net MVC应用程序。在网格中,我试图显示一个文化列表。这些数据必须以用户语言(当前线程语言)显示。
例如,我获取了一组语言代码:
fr-fr
en-gb
fr-ca
我正在做这个:
var cultureOne = new CultureInfo("fr-fr").DisplayName
var cultureTwo = new CultureInfo("en-gb").DisplayName
var cultureThird = new CultureInfo("fr-ca").DisplayName
这段代码的问题在于,显示名称属性没有本地化(它不依赖于用户文化),而是取决于服务器文化。
因此,由于我的计算机语言设置为法语,我无论使用英语、法语或意大利语等语言,始终得到相同的结果:
français (France)
Anglais (Royaume-Uni)
français (Canada)
我的目标是获得以下结果:
If I am in french :
français (France) Anglais (Royaume-Uni) français (Canada)
If I am in English:
french (France) English (United Kingdom) french (Canada)
If I am in italian:
francese (Francia) inglese (Regno Unito) francese(Canada)