ASP.Net MVC3 Удаленная аннотация данных не работает - PullRequest
0 голосов
/ 02 декабря 2010

У меня есть класс с аннотациями данных, использующими атрибут 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; } 
}

Как заставить удаленную проверку работать без обязательной проверки?

1 Ответ

0 голосов
/ 16 декабря 2010

Обновление до MVC3 RC2.Я только что попробовал без атрибута Required.Работает.Однако мне показалось странным то, что удаленная проверка иногда запускается при каждом нажатии клавиши и в другое время

...