asp.net MVC不引人注目的验证数据注释是仅具有客户端验证还是执行服务器端?
答案 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();
}