ASP.NET MVC:未激发远程验证
本文关键字:程验证 验证 MVC NET ASP | 更新日期: 2023-09-27 18:24:18
调用远程验证时出现问题。在控制器中的远程处理方法中,通过匹配的属性名称和参数,我已经正确设置了所有内容。我唯一怀疑的是我在另一个项目中找到的模型。
这是我的型号代码:
[Display(Name="First name")]
[Required(ErrorMessage="First name required")]
public string Firstname { get; set; }
[Display(Name = "Last name")]
[Required(ErrorMessage = "Last name required")]
public string Lastname { get; set; }
[Display(Name = "Username")]
[Required(ErrorMessage = "Username required")]
[Remote("IsUsernameExisted", "UserValidationController", HttpMethod = "POST")]
public string Username { get; set; }
[Display(Name = "Email address")]
[Required(ErrorMessage = "Email address required")]
[Remote("IsEmailExisted", "UserValidationController", HttpMethod = "POST")]
public string EmailAddress { get; set; }
[Display(Name = "Password")]
[Required(ErrorMessage = "Password required")]
public string Password { get; set; }
[Display(Name = "Confirmation password")]
[Required(ErrorMessage = "Confirmation required")]
[System.Web.Mvc.CompareAttribute("Password", ErrorMessage = "Passwords don't match.")]
public string ConfirmationPassword { get; set; }
这个模型是一个单独的项目,但在visualstudio中使用相同的解决方案。
这会是远程验证没有被激发的原因吗。
您的web.config中可能缺少此项吗?
<appSettings>
<add key="ClientValidationEnabled" value="true" />
<add key="UnobtrusiveJavaScriptEnabled" value="true" />
</appSettings>
"由于使用不引人注目的客户端验证时不会发出JavaScript,因此如果忘记包含验证脚本,则在加载页面时不会看到任何错误。唯一的结果是表单值不会在浏览器中进行验证。"
来源:如何:在ASP.NET MVC 中实现远程验证