0

Telerik Q3 2010 asp.net mvc 拡張機能を Q1 2011 にアップグレード中です。以前は、グリッド編集で無効な値はフォームに投稿されませんでしたが、現在は null 値として投稿されています。Telerik チームに問い合わせたところ、これは予期された動作であり、すべてのモデルをコントローラーにポストする予定であることが確認されました。

私を悩ませているのは、フィールドが null 可能で、 Required 属性で装飾していないにもかかわらず、フィールドの null 値が Modelstate を無効にしていることです。

ここに私のビューモデルがあります:

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) を無効にして非表示にするかを指定します。

ここに画像の説明を入力

ここに画像の説明を入力

ここで、personalClinin チェックボックスがオンになっているときに HospitalID に null 値を投稿している場合でも、それは完全に理にかなっていて、コントローラー側では HospitalID は null 値を受け入れる必要があります。 ModelstateDictionary の HospitalID には無効です。

何がこのように動作するのかわかりません。

4

1 に答える 1

1

これはバグと見なされ、次のリリースで対処される予定です。

于 2011-03-16T06:58:57.273 に答える