У меня есть класс с аннотациями данных, использующими атрибут Remote:
public class Person
{
[Remote("NameValidation","Validation", ErrorMessage = "Field is Invalid", Fields = "LastName")]
public string FirstName { get; set; }
public string LastName { get; set; }
}
В ValidationController:
public ActionResult NameValidation(string FirstName, string LastName)
{
bool isNameValid = true;
if (FirstName.Contains("John") && LastName.Contains("Doe"))
{
isNameValid = false;
}
return Json(isNameValid, JsonRequestBehavior.AllowGet);
}
По моему мнению:
@{Html.EnableClientValidation(); }
@using (Html.BeginForm())
{
@Html.EditorFor(x => x.FirstName) @Html.ValidationMessageFor(x => x.FirstName)
@Html.EditorFor(x => x.LastName) @Html.ValidationMessageFor(x => x.LastName)
<input name="finishButton" type="submit" id="button" >
}
NameValidation вызывается только в том случае, если я также добавлю атрибут Required следующим образом:
public class Person
{
[Required]
[Remote("NameValidation","Validation", ErrorMessage = "Field is Invalid", Fields = "LastName")]
public string FirstName { get; set; }
public string LastName { get; set; }
}
Как заставить удаленную проверку работать без обязательной проверки?