Telerik опубликовал значения, делающие недействительным состояние модели - PullRequest
0 голосов
/ 14 марта 2011

Мы находимся в процессе обновления расширений mvc telerik Q3 2010 до Q1 2011. Ранее при редактировании сетки отключенные значения не были размещены в форме, но теперь они представлены как нулевые значения. Я спросил команду Telerik, и они подтвердили, что это ожидаемое поведение, и они будут публиковать всю модель обратно в контроллер. меня беспокоит то, что нулевое значение для поля делает Modelstate недействительным, даже если поле имеет значение NULL, и я не украшаю его атрибутом Required. Вот мой взгляд модель

public class VMDoctorHospital
    {
        [HiddenInput(DisplayValue = false)]
        public int DrHospitalID { get; set; }
        [HiddenInput(DisplayValue = false)]
        public int DoctorID { get; set; }
        [DisplayName("Personal Clinic?")]
        public bool PersonalClinic { get; set; }
        [DisplayName("Clinic Name")]
        public string ClinicName { get; set; }
        [DisplayName("Hospital"), UIHint("IntStrEditor")]
        public int? HospitalID { get; set; }
        [DisplayName("Doctor's Position")]
//ohter fields
}

в флаге Model PersonalClinic указывает, какой ввод (название клиники или HospitalID) будет отключен и скрыт.

enter image description here enter image description here
Теперь, даже если они публикуют нулевое значение для HospitalID, когда флажок personalClinin установлен, это имеет смысл, и на стороне контроллера HospitalID должен принимать нулевое значение, поскольку оно допускает нулевое значение и не ТРЕБУЕТСЯ, но на самом деле я получаю
«Значение« null »недопустимо для HospitalID» в ModelstateDictionary. Я понятия не имею, что заставляет его вести себя таким образом. Любая помощь в этом отношении высоко ценится
спасибо

1 Ответ

1 голос
/ 16 марта 2011

Это считалось ошибкой и будет исправлено в следующем выпуске.

...