这篇MSDN文章讨论了使用删除验证来验证单个值....
http://msdn.microsoft.com/en-us/library/gg508808%28v=vs.98%29.aspx
特别是,模型属性被归因于调用删除验证...
public class CreateUserModel : EditUserModel {
[Required]
[StringLength(6, MinimumLength = 3)]
[Remote("IsUID_Available", "Validation")]
[RegularExpression(@"(\S)+", ErrorMessage = "White space is not allowed.")]
[Editable(true)]
public override string UserName { get; set; }
}
我想要实现的是远程验证,其中考虑了许多字段。例如,我可能希望以Ajax方式提交两个或三个字段,并获得整体验证结果。
如何实现这一目标?
答案 0 :(得分:5)
您可以设置AdditionalFields
属性的[Remote]
属性,以便将其他属性值发送给操作。
[Remote("IsUID_Available", "Validation", AdditionalFields = "Email")]
public override string UserName { get; set; }
然后在你的控制器动作中:
public ActionResult IsUID_Available(string username, string email)
{
...
}