我创建一个字典并使用枚举值设置它。我想使用Html.DropdownlistFor填充下拉列表。这是我的行动:
public ActionResult Index()
{
Dictionary<string, string> TagsDictionary = new Dictionary<string, string>();
Enum.GetNames(typeof(System.Tags)).ToList().ForEach(x => TagsDictionary.Add(x, Resources.PageResources.ResourceManager.GetString(String.Format("Tags_{0}", x))));
return View(TagsDictionary);
}
但我不知道如何编写View以在页面加载时获取下拉列表中的字典值
答案 0 :(得分:1)
使用SelectListItem
:
public ActionResult Index()
{
List<SelectListItem> tagsList = new List<SelectListItem>();
Enum.GetNames(typeof(System.Tags)).ToList()
.ForEach(x => tagsList .Add(new SelectListItem(){Value = x, Text = Resources.PageResources.ResourceManager.GetString(String.Format("Tags_{0}", x))}));
return View(tagsList );
}
在您看来,您可以致电:
@Html.DropDownList("Tags List", Model)