Asp.net mvc 2 Telerik网格发布的值使Modelstate无效

Asp.net mvc 2 Telerik网格发布的值使Modelstate无效,asp.net-mvc-2,telerik,data-annotations,telerik-grid,telerik-mvc,Asp.net Mvc 2,Telerik,Data Annotations,Telerik Grid,Telerik Mvc,我们正在从telerik 2010年第三季度asp.net mvc扩展升级到2011年第一季度。以前,在网格编辑中禁用的值未在表单中过帐,但现在它们作为空值过帐。我询问了telerik团队,他们确认这是预期的行为,他们将把所有模型发布回控制器。困扰我的是,字段的null值使Modelstate无效,即使该字段可为null,并且我没有用Required属性修饰它。这是我的视图模型 public class VMDoctorHospital { [HiddenInput(Di

我们正在从telerik 2010年第三季度asp.net mvc扩展升级到2011年第一季度。以前,在网格编辑中禁用的值未在表单中过帐,但现在它们作为空值过帐。我询问了telerik团队,他们确认这是预期的行为,他们将把所有模型发布回控制器。困扰我的是,字段的null值使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
}
在模型中,PersonalClinic标志指示将禁用和隐藏哪些输入(诊所名称或医院ID)


现在,即使他们在选中personalClinin复选框时为HospitalID发布空值,这也是完全有道理的,在控制器端HospitalID应该接受空值,因为它可以为空且不是必需的,但实际上我收到了
值“null”对于ModelstateDictionary中的HospitalID无效。我不知道是什么让它这么做的。非常感谢您在这方面提供的任何帮助

谢谢

这被认为是一个bug,将在即将发布的版本中解决。

在您描述的时候,发送整个模型是一种预期行为。你能描述一下这里的bug是什么吗:当它应该为真时,发送整个模型或modelstate为假?有一个例子是,整数字段的字符串“null”被发布,这就是bug所在。你试过升级吗?问题解决了吗?如果没有,请打开一个新的论坛线程,并向我们发送一个样本项目。样本项目的问题由Tassadaque Zia先生在telerik论坛上发布。我说的是同样的问题,但测试版论坛似乎已经被移动或无法访问。让我知道,如果你需要另一个包含错误的样本项目副本,我再次问你-你是否尝试升级到最新的官方版本?正如我已经解释过的,我们在测试版之后修复了一个类似的问题。如果升级后问题没有得到解决,请打开一个新的论坛线程并向我们发送一个示例项目。上述线程中的问题已在最新版本中解决。不,我没有。不知道它被释放了。将在一两天内向您提供最新信息。谢谢你的快速回复