嗨,我对MVC3很新,我正在尝试做一些我认为必须相当普遍的事情,但是不能完全接受它。
我有一个模型,我希望将枚举DayOfWeek的值存储在:
public class Booking
{
public int ID { get; set; }
public int Day { get; set; }
....
}
我已经把它作为一个存储在数据库中的int。
我想在View中以DropDownList编辑:
<div class="editor-field">
@Html.DropDownListFor(model => model.Booking.Day, new SelectList(Enum.GetValues(typeof(DayOfWeek))))
@Html.ValidationMessageFor(model => model.Booking.Day)
</div>
但是我收到错误:“字段日必须是数字”。
我知道我错过了一些东西,可能有些简单,有人可以帮忙吗?
答案 0 :(得分:3)
将SelectList属性添加到viewmodel并按@ Brandon的回答here填充。
然后您将代码更改为:
@Html.DropDownListFor(model => model.Booking.Day, Model.SelectListProperty)
(其中SelectListProperty
是您的视图模型上的属性名称)
答案 1 :(得分:0)
您还可以使用DayOfWeek更改模型类:
public class Booking
{
public int ID { get; set; }
public DayOfWeek Day { get; set; }
}