2012-04-16 59 views
1

我在一个asp.net页面上工作。我有一个下拉列表的国家和国家在aspx页面填写/硬编码。我想将这个国家下拉列表本地化,以便如果文化是法语的,国家名称以法语出现,如果文化名称是德国,则国家名称以德语出现。asp.net/C#中的本地化国家名称

我尝试下面的链接,但它不工作:

http://geekswithblogs.net/aghausman/archive/2009/07/26/get-countries-name-in-.net.aspx

我是否需要使用DB或我可以不用DB。

请建议如何去做。

+0

这个可能的重复 - > http://stackoverflow.com/questions/898694/list-of-all-countries-in-any-language – 2012-04-16 07:50:26

+0

实际上我给出的链接似乎是这个副本one - > http://stackoverflow.com/questions/1788950/where-can-i-get-a-list-of-all-countries-cities-to-populate-a-listbox – 2012-04-16 07:52:59

+0

@EmirAkaydın:我需要所有countrynames在当前选择的浏览器文化中。 – DotnetSparrow 2012-04-16 07:55:24

回答

0

您必须将本地化名称保存在某处。它可能在数据库或IIS池内存中(意思就像静态硬编码变量)或从文件(csv,xml等)中加载一次。但将它们保存在资源文件中可以很好地实现与现有.net框架机制的最大兼容性。

关于你的问题,这里是描述这种情况的article。基本上,您将UICulture设置为“自动”(意味着它将从浏览器设置中获取)并将本地化资源置于resx文件中。

+0

我尝试过使用objRegionInfo.NativeName,它以每种语言显示其国家名称,但我希望在当前文化中使用所有国家/地区名称。全部用德语,全部用法语等。此外,与objRegionInfo.NativeName,我看到箱子而不是字符,这些话似乎并不支持。 – DotnetSparrow 2012-04-16 08:07:45

相关问题