Мы находимся в процессе обновления расширений 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) будет отключен и скрыт.
Теперь, даже если они публикуют нулевое значение для HospitalID, когда флажок personalClinin установлен, это имеет смысл, и на стороне контроллера HospitalID должен принимать нулевое значение, поскольку оно допускает нулевое значение и не ТРЕБУЕТСЯ, но на самом деле я получаю
«Значение« null »недопустимо для HospitalID» в ModelstateDictionary. Я понятия не имею, что заставляет его вести себя таким образом. Любая помощь в этом отношении высоко ценится
спасибо