2014-01-13 3 views
0

내 웹 응용 프로그램에서 덴마크 문화를 강제하고 싶지만 작동시키지 못합니다. 덴마크 국가 이름으로 드롭 다운 목록을 채우려고하지만 영어로 반환됩니다.ASP.NET MVC WebApp 문화 강요

public static IEnumerable<SelectListItem> GetCountries(string selectedDisplayName) 
{ 
    var countryNames = new List<SelectListItem>(); 
    foreach (var cul in CultureInfo.GetCultures(CultureTypes.SpecificCultures)) 
    { 
     var country = new RegionInfo(new CultureInfo(cul.Name, false).LCID); 
     var item = new SelectListItem() 
     { 
      Text = country.DisplayName, 
      Value = country.DisplayName 
     }; 
     if (!String.IsNullOrEmpty(selectedDisplayName) && country.DisplayName.Equals(selectedDisplayName)) 
     { 
      item.Selected = true; 
     } 
     countryNames.Add(item); 
    } 
    IEnumerable<SelectListItem> nameAdded = countryNames.GroupBy(x => x.Text).Select(x => x.FirstOrDefault()).ToList().OrderBy(x => x.Text); 
    return nameAdded; 
} 

내 Web.config의이 (아무 효과)이 있습니다

<system.web> 
    <globalization uiCulture="da-DK" culture="da-DK" /> 
</system.web> 

누구나 어떤 제안을 얻었다?

답변

2

MSDN (http://msdn.microsoft.com/en-us/library/system.globalization.regioninfo.displayname(v=vs.110).aspx)에 따르면 RegionInfo.DisplayName은 설치 한 .NET 버전의 언어를 사용하며, 이는 항상 Windows 설치 언어와 동일합니다.

대신 항상 로컬 이름 인 RegionInfo.NativeName (http://msdn.microsoft.com/en-us/library/system.globalization.regioninfo.nativename(v=vs.110).aspx)을 사용하십시오.

+0

감사합니다. :-) – janhartmann