我是MVC的新手。我已经定义在我的成分表UnitOfMeasure
一个枚举,如下所示:枚举保存失败,错误消息不显示
public enum UnitOfMeasure
{
oz=1,
lb=2,
ml=3,
liter=4,
gal=5
}
我已经定义了相应的字段,如下所示:
[Required]
[Range(1, int.MaxValue, ErrorMessage = "Please make a selection")]
public UnitOfMeasure? UnitOfMeasure { get; set; }
“请选择”,如需要,显示为视图中的默认值,但我希望用户必须在保存前进行选择。我在视图中使用如下的EnumDropDownListFor
。
@Html.EnumDropDownListFor(model => model.UnitOfMeasure,
"--Please select--",
new { @class = "form-control" })
两个问题。首先,当用户没有做出选择时,错误信息没有出现,其次,我根本不能保存任何选择(显然没有选择符合范围标准)。我究竟做错了什么?
删除'[Range(1,int.MaxValue,ErrorMessage =“请做出选择”)]'属性。所有需要的是你的[[Required]'属性(并在该属性中添加ErrorMessage),并且你是否包含了@ValidationMessageFor(m => m.UnitOfMeasure)'以显示消息? –
修复了!谢谢斯蒂芬! –