我有两个单独的视图访问同一个模型。当我将验证器数据注释放在模型上时,它会像宣传的那样工作,如果留空或不在范围内,它会阻止提交数据(对于两个视图)。但是,我有一个视图应该能够允许为属性保存空值或空值,而另一个视图需要在允许它通过之前输入或选择信息。换句话说,我想为一个视图关闭模型中属性的验证器,并为另一个视图保留它。这是示例代码:
模型:
[Range(1, 999, ErrorMessage = "A submittal is required")]
public int SubmittalId { get; set; }
查看#1:
<label>@Model.AuditDoc.SubmittalsLabel.ConfigurableLabelDesc</label> @Html.ValidationMessageFor(x => x.AuditDoc.SubmittalId) @Html.DropDownListFor(x => x.AuditDoc.SubmittalId, new SelectList(Model.AuditDoc.ListOfSubmittals, "Id", "Name"))
查看#2:
<label>@Model.AuditDoc.SubmittalsLabel.ConfigurableLabelDesc</label> @Html.DropDownListFor(x => x.AuditDoc.SubmittalId, new SelectList(Model.AuditDoc.ListOfSubmittals, "Id", "Name"))
如您所见,我想为 View #2 禁用该验证器数据注释,并为 View #1 保留它。