Jes*_*esi 2 country razor asp.net-mvc-3 drop-down-menu
我的控制器动作代码:
ViewBag.country = from p in CultureInfo.GetCultures(CultureTypes.AllCultures & ~CultureTypes.NeutralCultures)
select new SelectListItem
{
Text = p.EnglishName,
Value = p.DisplayName
};
Run Code Online (Sandbox Code Playgroud)
查看代码:
<dl>
<dt>
<label>
Country:
</label>
</dt>
<dd>
@Html.DropDownListFor(model => model.Country, (IEnumerable<SelectListItem>)ViewBag.country)
</dd>
<dl>
Run Code Online (Sandbox Code Playgroud)
它会生成一个未排序语言的下拉列表.但我需要一个已排序国家/地区列表的下拉列表.请帮忙!!!!
Windows和/或.Net不包含所有国家/地区的列表.
语言/文化列表是稳定的,国家来来去去,或经常更改名称.
转到ISO站点,您可以从他们的站点下载国家列表.您必须下载此列表,并经常更新您的数据.
更新:国家代码列表不再由ISO自由分发,更多信息可在iso.org网站上找到.
你必须决定,如果你想把巴勒斯坦这样的国家列入这个名单(巴勒斯坦就在这个名单上,只是"新"国家的一个例子).您可能需要手动添加它们.
Is this what you want?
ViewBag.country = from p in CultureInfo.GetCultures(CultureTypes.AllCultures & ~CultureTypes.NeutralCultures).OrderBy(c=>c.Name)
select new SelectListItem
{
Text = p.EnglishName,
Value = p.DisplayName
};
Run Code Online (Sandbox Code Playgroud)