我是MVC的新手,需要针对我遇到的问题提供一些指导。
我有一个文本字段,用于包含使用日期选择器的日期。在模型中,我没有指定验证文本字段。
但是我提交了表单,jQuery unobstrusive验证了日期文本字段。
Using System;
Using System. Collections. Generic;
Using System. ComponentModel;
Using System. ComponentModel. DataAnnotations;
Using System. Linq;
Using System. Web;
Using DataAnnotationsExtensions;
Namespace heavy_haulage_general_freight. Models
{
public class nsc_gf_job
{
[Key]
public int id { get; set; }
public DateTime pickup_date { get; set; }
}
}
@model heavy_haulage_general_freight. Models. Nsc_gf_job
@using heavy_haulage_general_freight. Helpers
@{
ViewBag.Title = "Create";
}
<h2>Create</h2>
@using (Html. BeginForm())
{
@Html.ValidationSummary(true)
<fieldset>
<legend>Resources Division Heavy Haulage Details:</legend>
<table>
<tbody>
<tr>
<td>@Html.Label("Pickup Date")</td>
<td>
@Html.TextBox("pickup_date", "") <br />
@Html.ValidationMessage("pickup_date")
</td>
<tr>
</tbody>
</table>
</fieldset>
<p>
<input type="submit" value="Create" />
</p>
}
答案 0 :(得分:3)
尝试使用可以为空的日期 - 即
public DateTime? pickup_date { get; set; }
还要注意这也适用于int,因为int没有'empty'默认值,你需要一个可以为空的值
答案 1 :(得分:2)
这是因为您在模型中定义了DateTime
类型的属性。此类型将始终进行验证,因为您无法为此类字段分配无效值。