我在搞乱html5日期输入字段。
<input type="date" >
我注意到当你清除字段时,该值被设置为空字符串。因此,当您将此值发布到后端(ASP.NET MVC)时,模型绑定器会提供&#34; 字符串未被识别为有效的DateTime &#34;而不是仅将其设置为null
。
所以我想知道告诉模型绑定器最简单的方法是当字段类型是DateTime时,应该将空字符串解析为null。
模型示例:
public class MyModel
{
public DateTime? MyDate { get; set; }
}
Ctrl示例:
public void Post(MyModel model)
{
...
}
答案 0 :(得分:2)
DateTime
是value type,它不能保留null。您可以使用Nullable<T>
struct(DateTime?
或Nullable<DateTime>
)来保存空值。
public class MyModel
{
public Nullable<DateTime> MyDate { get; set; }
}