📅  最后修改于: 2023-12-03 15:13:04.064000             🧑  作者: Mango
在一个 Web 应用程序中使用国家和地区信息是很常见的需求,因此在 ASP.NET MVC 5 中提供了一种方便的方式来获取这些信息。本文将介绍如何在 .NET MVC 5 中获取国家和地区列表。
使用 System.Globalization 命名空间下的 RegionInfo 类可以轻松获取国家和地区信息。下面的代码示例演示如何在控制器中获取国家列表,并将其放入下拉列表中:
public ActionResult Index()
{
var countries = CultureInfo.GetCultures(CultureTypes.SpecificCultures)
.Select(c => new SelectListItem
{
Value = new RegionInfo(c.LCID).EnglishName,
Text = new RegionInfo(c.LCID).EnglishName
})
.Distinct()
.OrderBy(c => c.Text);
ViewBag.Countries = countries;
return View();
}
在视图文件中可以直接使用 ViewBag.Countries 来渲染下拉列表。
@Html.DropDownList("Country", (IEnumerable<SelectListItem>) ViewBag.Countries, "Select a Country", new { @class = "form-control" })
使用 RegionInfo 类也可以获取地区列表。下面的代码示例演示如何在控制器中获取区域列表,并将其放入下拉列表中:
public ActionResult Index()
{
var regions = CultureInfo.GetCultures(CultureTypes.SpecificCultures)
.Select(c => new RegionInfo(c.Name))
.Select(r => new SelectListItem
{
Value = r.Name,
Text = r.EnglishName
})
.Distinct()
.OrderBy(r => r.Text);
ViewBag.Regions = regions;
return View();
}
在视图文件中可以使用 ViewBag.Regions 来渲染下拉列表。
@Html.DropDownList("Region", (IEnumerable<SelectListItem>) ViewBag.Regions, "Select a Region", new { @class = "form-control" })
在 .NET MVC 5 中获取国家和地区列表非常容易。可以使用 RegionInfo 类获取这些信息,并将它们放入下拉列表中供用户使用。这种方法非常方便,可以帮助开发人员快速实现这一需求。