有没有办法让enum的下拉列表可选?如果表单上没有此下拉列表的值,ModelState.IsValid
将评估为false
,并显示此下拉列表需要值的错误。我没有在此属性上明确使用[Required]
属性。
@Html.EnumDropDownListFor(m => m.People[0].Role, "Select a role", new { @class = "form-control role" })
枚举是:
public enum RoleType { Employee, Visitor, Vendor, Witness }
答案 0 :(得分:1)
属性是m.People [0]。在您的模型中可以为空。您可以将RoleType设置为可为空,这应该删除验证错误。
public RoleType? Role {get;set;}
答案 1 :(得分:0)
似乎有一种方法可以使用类似
之类的东西从ModelState中删除特定属性ModelState.Remove("nameOfProperty");
此信息在以下链接的另一个Stackoverflow帖子中找到
ModelState.IsValid does not exclude required property
不确定这是否与您的问题直接相关,但希望这会有所帮助。