У меня проблема с удаленной проверкой.
У меня есть модель представления со свойством, к которому я добавил удаленный валидатор, но когда я запускаю форму и ввожу строку в текстовое поле, значение, переданное в контроллер, равно нулю.
Свойство в модели представления выглядит так:
[Required(ErrorMessage = "Enter the host's name")]
[Remote("ValidateHostFullName", "BoardroomBooking", ErrorMessage = "Enter a different name")]
[DisplayName("Host's Name")]
public string HostFullName { get; set; }
Код для валидатора в контроллере выглядит следующим образом:
public ActionResult ValidateHostFullName([Bind(Prefix="BookingReceptionViewModel")]string HostFullName)
{
if (!HostFullName.Equals("John Smith"))
{
return Json(true, JsonRequestBehavior.AllowGet);
}
return Json("{0} is not allowed", JsonRequestBehavior.AllowGet);
}
Значение строки для HostFullName отображается как нулевое, независимо от того, что введено в поле. Я пробовал с префиксом Bind и без него, и это не имеет значения.
Я пробовал это на модели, и она работает, кажется, что проблема возникает только при использовании модели представления.
Спасибо
Mark