Удаленная проверка в asp.net MVC 3 - PullRequest
0 голосов
/ 14 марта 2011

Мы находимся в процессе обновления с mvc2 до mvc3 и действительно испытываем проблемы с функцией удаленной проверки.Вот как выглядит appsetting в web.config

<appSettings>
    <add key ="ClientValidationEnabled" value ="true"/>
    <add key ="UnobtrusiveJavaScriptEnabled" value ="true"/>
    <add key="CrystalImageCleaner-AutoStart" value="true" />
    <add key="CrystalImageCleaner-Sleep" value="60000" />
    <add key="CrystalImageCleaner-Age" value="120000" />
  </appSettings>

Так выглядит моя модель и связанные с ней метаданные

[MetadataType(typeof(setupEmployeeValidator))]
    public partial class setupEmployee { }


    public class setupEmployeeValidator
    {
        [Required(ErrorMessage = "Employee Name is Required")]
        [StringLength(50, ErrorMessage = "Employee Name should be less than {1} characters")]

        public String EmployeeName { get; set; }
        [Required(ErrorMessage = "ID card number is Required")]
        [RegularExpression(@"^\d{5}-\d{7}-\d{1}", ErrorMessage = "Format for CNIC is xxxxx-xxxxxxx-x")]
        [StringLength(16, ErrorMessage = "ID card number should be less than {1} characters")]
        [Remote("CheckDuplicateNIC","hcm","Employee Already Exists")]
        public String CNIC { get; set; }
        [Required(ErrorMessage = "Gender is Required")]
        public String Gender { get; set; }
        [Required(ErrorMessage = "Religion is Required")]
        [StringLength(50, ErrorMessage = "Religion should be less than {1} characters")]
        public String Religion { get; set; }
        public DateTime? DOB { get; set; }
        [Required(ErrorMessage = "Nationality is Required")]
        [StringLength(50, ErrorMessage = "Nationality should be less than {1} characters")]
        public String Nationality { get; set; }
        [Required(ErrorMessage = "Marital Sataur is Required")]
        public String MaritalStatus { get; set; }
        public int ScaleID { get; set; }

    }

Я убедился, что на странице загружены необходимые файлы jqueryв правильном порядке.когда я проверяю сгенерированный HTML-код, я не нахожу никаких полей HTML5, сгенерированных для удаленной проверки (там присутствуют поля для регулярного выражения и требуемой проверки)

<input type="text" value="" name="CNIC" id="CNIC" data-val-required="ID card number is Required" data-val-regex-pattern="^\d{5}-\d{7}-\d{1}" data-val-regex="Format for CNIC is xxxxx-xxxxxxx-x" data-val-length-max="16" data-val-length="ID card number should be less than 16 characters" data-val="true">

я не знаю, в чем может быть проблема.Я создал пример проекта MVC3, и в этом проекте все, кажется, работает нормально, но когда я пытаюсь реализовать его в моем приложении, он просто не работает.Любая помощь высоко ценится.спасибо

1 Ответ

1 голос
/ 01 апреля 2011

[Удаленный ("CheckDuplicateNIC", "hcm", "Сотрудник уже существует")]

над линией виновник. в MVC2 я создал свой собственный атрибут проверки для удаленной проверки, который служил базовым классом для всех атрибутов удаленной проверки и, к сожалению, с тем же именем. когда я конвертировал в mvc3, .NET все еще передавал параметры старому классу (мой класс создан для MVC 2). Вот почему атрибуты html5 не создавались только для удаленной проверки.
спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...