加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc – MVC数据类型ErrorMessage

发布时间:2020-12-16 04:13:03 所属栏目:asp.Net 来源:网络整理
导读:DataType ErrorMessage不起作用. MVC4 DataType ErrorMessage似乎不起作用. 我有这个dataannotation属性: [DataType(DataType.DateTime,ErrorMessage = "Invalid date")]public override DateTime? BirthDate { get; set; } 但客户端验证返回此错误: Birth
DataType ErrorMessage不起作用.
MVC4 DataType ErrorMessage似乎不起作用.
我有这个dataannotation属性:
[DataType(DataType.DateTime,ErrorMessage = "Invalid date")]
public override DateTime? BirthDate { get; set; }

但客户端验证返回此错误:

BirthDate字段必须是日期.

这是Html部分:

<input Value="" class="date" data-val="true" data-val-date="The field BirthDate  must be a date." data-val-required="El campo Fecha nacimiento es obligatorio" id="Patient_BirthDate" name="Patient.BirthDate" type="text" value="" />

任何的想法?

解决方法

简答:DataType.DateTime的目的不是验证您的Birthday属性的DateTime条目.这就是原因.它的作用就是在将DateTime显示在视图上之前对其进行格式化.

你需要的是拥有[Required]属性.

但是,我通常喜欢使用的是Jquery Datepicker,它甚至不允许用户输入任何文本,而是一个有效的日期.

编辑:使用[DataType(DataType.Date)]装饰模型属性时,ASP.NET MVC 4中的默认模板会生成type =“date”的输入字段.支持HTML5的浏览器(例如Google Chrome)会使用日期选择器呈现此输入字段.

您可以使用代码强制执行此操作:

[DataType(DataType.Date)]
[DisplayFormat(DataFormatString = "{0:yyyy-MM-dd}",ApplyFormatInEditMode = true)]
public DateTime? BirthDate { get; set; }

为了正确显示日期,该值必须格式化为2012-09-28

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读