mvc数据验证的问题
mvc的实体类中有:
public int id { set; get; }
[Required(ErrorMessage="价格必须填写")]
public float price { set; get; }
public string address { set; get; }
public DateTime intTime { set; get; }
<tr>
<td>id</td>
<td><input type="text" id="id" name="id" /></td>
</tr>
<tr>
<td>price</td>
<td>@Html.TextBoxFor(model => model.price)</td>
<td>@Html.ValidationMessageFor(model => model.price)</td>
</tr>
<tr>
<td>address</td>
<td>@Html.TextBoxFor(model => model.address)</td>
</tr>
<tr>
<td>intime</td>
<td>@Html.TextBoxFor(model => model.intTime)</td>
</tr>
启用mvc自带的客户端验证后,不填写数据直接submit提交后,int类型id,datetime类型inTime都会进行验证(输入框变红)。我没在id、inTime上加验证属性呀?是什么原因造成的?怎么解决呢? --------------------编程问答-------------------- int,DateTime是指类型,不能为空
试试
public int? id { set; get; }
public DateTime? intTime { set; get; } --------------------编程问答--------------------
不是说自带的验证?。。。 --------------------编程问答-------------------- 你确定代码贴全了? 不会加属性是不会进行校验的。 --------------------编程问答-------------------- 楼上int float类型不加属性会验证,是什么原因呀? --------------------编程问答--------------------
int,float,DateTime都是值类型,不能为空,你传个空值过去,不能通过验证
查一下值类型和引用类型的区别
补充:.NET技术 , ASP.NET