Я создаю общедоступный веб-сайт, используя ASP.NET, в рамках конечного результата мне нужно создать сайт администратора для ввода данных, показанных на общедоступном сайте, мне было интересно, какие методы или процедуры люди используют для проверки записей с помощью ASP. .NET MVC.
Как лучше всего реализовать проверку поля с помощью ASP.NET MVC?
Ответы (3)
Взгляните на плагин JQuery Validation, этот плагин потрясающий, он чист для реализовать и имеет все функции, которые могут вам когда-либо понадобиться, включая удаленную проверку через AJAX.
Также образец метода контроллера MVC можно найти здесь который в основном использует тип действия JsonResult, например:
public JsonResult CheckUserName(string username)
{
return Json(CheckValidUsername(username));
}
IMO с использованием xVal с jQuery и DataAnnotationsModelBinder - лучшая комбинация.
Однако иногда существуют правила проверки, которые нельзя полностью проверить на стороне клиента, поэтому вам необходимо использовать удаленную проверку на стороне клиента.
Я нашел способ в целом реализовать удаленную проверку на стороне клиента с помощью xVal / jQuery.validate, чтобы
- Правила проверки остаются исключительно в вашей модели ASP.NET MVC.
- Вы пишете каждое правило проверки только один раз и только в легко тестируемом коде C #. Нет JavaScript или другого аналога на стороне клиента.
- Нет необходимости разветвлять или иным образом изменять xVal или jquery.validate
- Все, что вам нужно сделать для каждого нового правила проверки удаленной формы, - это унаследовать от базового класса, показанного в этой статье.
Я написал статья в блоге об этом с описанием всех деталей.
Мой любимый способ проверки как клиента, так и сервера с использованием атрибутов на основе модели. Я написал небольшой пост об этом и также выпустил исходный код, который в основном позволит вам создать такой класс.
class User {
[Required]
public string Name{get;set;}
[Email][Required]
public string Email {get;set;}
}
И соответствующий код javascript будет сгенерирован для выполнения проверки клиента, а средство выполнения проверки на стороне сервера будет проверять вашу отправленную форму.
Прочтите сообщение здесь а>