Ответ 1
Проверьте приведенную ниже ссылку:
Проверить мгновенно Если есть имя пользователя - Проверка ASP.NET MVC Remote
Что вам нужно, это RemoteAttribute
для свойства, которое вы проверяете, а также вам нужно реализовать действие контроллера, которое возвращает JsonResult
с логическим значением.
Вот краткий пример:
Ваша модель:
[Required]
[Display(Name = "User name")]
[Remote("doesUserNameExist", "Account", HttpMethod = "POST", ErrorMessage = "User name already exists. Please enter a different user name.")]
public string UserName { get; set; }
Результат действия:
[HttpPost]
public JsonResult doesUserNameExist(string UserName) {
var user = Membership.GetUser(UserName);
return Json(user == null);
}
Вы можете настроить бизнес-логику внутри результата действия для своих нужд.
Кроме того, убедитесь, что на странице регистрации указаны следующие библиотеки, а также ваш файл jQuery:
jquery.validate.min.js
jquery.validate.unobtrusive.min.js
В приведенном выше блоге размещено все, что вам нужно.
Примечание
Имейте в виду, что проверка Remote
не срабатывает на стороне сервера. Возможно, вы захотите проверить приведенную ниже ссылку для удаленной проверки на стороне сервера (я не рекомендую использовать его на производстве, но он заполнен отверстиями, но это даст вам представление):
http://www.tugberkugurlu.com/archive/asp-net-mvc-server-side-remote-validation