好的,我已经浏览了不同的网站,了解ENUM
在DropDownLists
中的使用情况,并且与使用自定义帮助程序将值传递到ViewBag并将其传递给{{{ 1}}。
enum values in drop down list in mvc4
我在整个网站中使用过各种DDL
个助手,但之前在Html.DropDownList
中还没有使用ENUM
。我宁愿不将它们硬编码到View中,因为我使用DDL
语句来控制选择switch
选项时发生的情况。所以想知道是否有一种简单的方法来实现这一点,而无需创建新的帮助来纠正这种情况。
这是我到目前为止所做的(减去不必要的代码):
filter
如果我按照上面的说法执行此操作,则响应为“没有类型为”public enum OrderFilter
{
All,
Live,
InProgress,
Invoiced,
Outstanding
}
public ActionResult Index(OrderFilter? orderFilter)
{
ViewBag.FilterOptions = orderFilter;
}
@Html.DropDownList("orderFilter", (IEnumerable<SelectListItem>)ViewBag.FilterOptions, "Filter Options")
“的ViewData项具有键”IEnumerable<SelectListItem>
“。
我正在寻找类似于以下代码的东西,但没有使用自定义助手(如果可能的话)。
orderFilter
答案 0 :(得分:0)
经过对此事的广泛调查后,按照我想要的方式做这件事并不是一件简单的事。所以我在helper类中添加了一个下拉列表中的ENUM值。
我看过的一些例子将模型与ENUM Helper结合使用,但由于我不需要,我发现下面的视频教程非常有用。以下视频是我目前的实施方式,并且按预期工作。
Binding Enum type with Dropdownlist Part 1