我为其中一个表单字段编写了一个自定义数据验证器,它完成了这项工作,但是表单仍在提交中,并且没有向用户返回错误消息。
有没有办法可以强制用户显示错误并阻止提交表单?
[CheckDateInPast(ErrorMessage = "Your date cannot be in the future.")]
.
.
.
@Html.ValidationMessageFor(model => model.MyField)
如何使我的自定义验证器作为 [Require] 属性工作,以便用户无法提交任何不符合我的标准的内容。
先感谢您 !
编辑。这是验证器。我的意思是验证提供的日期不是将来的日期,并且不小于 SQL Server 中允许的日期。
public override bool IsValid(object value)
{
DateTime date;
bool success = DateTime.TryParse(value.ToString(), out date);
if (!success)
return false;
if (date < System.Data.SqlTypes.SqlDateTime.MinValue || date > DateTime.Now)
return false;
return true;
}