我的模型中有一个DateTime
属性,但我只对时间部分感兴趣:
public class MyModel
{
[Required, DataType.Time]
public DateTime Time
}
在我看来,我这样输出它:
@Html.EditorFor(model => model.Time)
这用于在 MVC 3 中生成以下 html:
<input class="text-box single-line" data-val="true"
data-val-required="The Time field is required."
id="Time" name="Time" type="time" value="" />
现在我正在尝试使用 MVC 4,这是生成的 html:
<input class="text-box single-line" data-val="true"
data-val-date="The field Time must be a date."
data-val-required="The Time field is required."
id="Time" name="Time" type="time" value="" />
添加了一个额外的属性data-val-date
,这会导致客户端验证错误,因为时间(例如“10:30”)未格式化为日期。
我想这是 MVC 4 中的一个错误(我报告了它)?但是在解决之前,有没有办法阻止这个属性的生成呢?或者更好的是,有没有办法让它作为data-val-time
替代生成,所以我可以为时间字段提供我自己的客户端验证方法?