ASP.NET Unobstrusive执行客户端和服务器端验证?

时间:2012-12-12 02:19:24

标签: asp.net-mvc-4 validation

asp.net MVC不引人注目的验证数据注释是仅具有客户端验证还是执行服务器端?

1 个答案:

答案 0 :(得分:1)

数据注释还执行客户端验证。例如,假设您在用于表单的模型的FirstName属性上有以下数据注释:

[Required(ErrorMessage = "Please enter your first name.")]
public string FirstName { get; set; }

如果启用了javascript,则验证将在客户端进行,除非用户在文本框中输入内容,否则表单将不会提交。如果禁用了javascript,或者如果缺少相应的脚本来执行客户端验证,则验证将在服务器端进行。但是,您必须检查ModelState是否有效,如果该视图无效,则返回该视图:

if (!ModelState.IsValid)
{
    // Do something here if you need to, then return the view
    return View();
}