我有一个C#ASP.NET MVC项目。该项目的表单以yy/mm/dd hh:mm
格式提交日期时间。控制器具有模型绑定以接收表单值。
datetime
属性的声明如下:
public DateTime? aDate { get; set; }
public DateTime? bDate { get; set; }
使用Chrome开发工具,我已经确认总是发送DateTime
值。
但是,有时会设置aDate
/ bDate
属性,有时却没有。
我无法在发送日期中观察到任何导致此现象的一致行为或模式。有时其中一个会设置,而另一个则不会。
如果模型中的所有其他属性的相应表单元素均具有值,则始终会对其进行设置。
可能是什么原因造成的?
答案 0 :(得分:0)
我不认为,因此您必须在模型级别将DateTime标记为null。只需将其作为DateTime。如果在表单级别不提供日期,它将自动转换为等效值,可以完美地在后端处理。