ASP.NET资源文件全球化和每个区域的本地化

时间:2011-08-22 10:53:06

标签: asp.net localization globalization cultureinfo

我正在开发一个需要支持多种语言的网站。

我知道我可以为每种文化提供单独的资源文件集,并使用它来管理不同的语言,例如当用户选择法语时,将UiCulture设置为法语,ASP.NET将获取法语资源文件。

我的问题是,我可能不得不支持法语为加拿大版本的网站和法语为欧洲版本的网站。由于加拿大市场与法国市场不同,文本会有所不同。

有没有办法可以支持两份“法语”资源文件 - 一份用于加拿大,另一份来自法国使用上述的UiCulture?

2 个答案:

答案 0 :(得分:3)

对于加拿大法语,有专门针对此的文化设置fr-CA。你只需要设置它。

enter image description here

答案 1 :(得分:2)

要添加Muhammad所说的内容,您需要创建两个名为Resources.fr.resx和Resources.fr-CA.resx的资源文件。您还需要通过将uiCulture设置为“auto”来实际检测uiCulture。

就是这样。您可能会考虑添加第三个(Resources.fr-FR.resx),它将是通用法语资源文件的副本,但实际上这不是必需的。

顺便说一句。请注意,用户可能在他/她的网络浏览器中设置了“FR”。在这种情况下,无论他/她在哪里,都会显示默认的法语。我认为这不是什么大问题,但你可能需要实际记录这个(如何根据浏览器设置适当的Accept-Language)。