我正在尝试使用Html.DropDownList扩展方法,但不知道如何将其与枚举一起使用。
假设我有一个如下所示的枚举:
public enum ItemTypes
{
Movie = 1,
Game = 2,
Book = 3
}如何使用Html.DropDownList扩展方法创建包含这些值的dropdown?
或者,我最好的办法就是简单地创建一个for循环,然后手动创建Html元素?
发布于 2013-02-04 19:01:31
我在这方面做得很晚,但我只是找到了一种非常酷的方式,只需要一行代码就可以做到这一点,如果你愿意添加Unconstrained Melody NuGet包(来自Jon Skeet的一个很好的小库)。
此解决方案更好,因为:
< code >G210
因此,以下是使其正常工作的步骤:
Install- Package UnconstrainedMelody"
//将"YourEnum“替换为您的枚举公有文本类型{ get { IEnumerable AllItems ().Select(enumValue => SelectListItem {SelectListItem= enumValue.ToString(),Text = enumValue.GetDescription() });} }
现在,您已经在模型上公开了SelectListItem的列表,您可以使用此属性作为源来使用@Html.DropDownList或@Html.DropDownListFor。
https://stackoverflow.com/questions/388483
复制相似问题