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

asp.net-mvc – ASP.NET MVC显示格式不会将DateTime格式化为日期

发布时间:2020-12-16 06:43:27 所属栏目:asp.Net 来源:网络整理
导读:我的显示格式设置如此 DisplayName("birthdate") _DisplayFormat(ApplyFormatInEditMode:=True,DataFormatString:="{0:MM/dd/yyyy}") _Public Property BirthDate As DateTime 然后在视图中我有以下内容 %: Html.TextBoxFor(Function(model) model.BirthDate
我的显示格式设置如此

<DisplayName("birthdate")> _
<DisplayFormat(ApplyFormatInEditMode:=True,DataFormatString:="{0:MM/dd/yyyy}")> _
Public Property BirthDate As DateTime

然后在视图中我有以下内容

<%: Html.TextBoxFor(Function(model) model.BirthDate,Model.BirthDate)%>
<%: Html.ValidationMessageFor(Function(model) model.BirthDate) %>

意味着输出“应该”

6/24/1982

但不幸的是,输出是

6/24/1982 12:00:00 AM

有谁知道我在这里可能会缺少什么?

解决方法

从Codeplex挖掘MVC2源代码,我最好的猜测是你需要使用EditorFor而不是TextBoxFor. TextBoxFor使用

string valueParameter = Convert.ToString(value,CultureInfo.CurrentCulture);

忽略格式属性(虽然它确实通过ModelMetadata类查找它们),而EditorFor和DisplayFor构建在使用格式属性的内部TemplateHelpers上.

(编辑:李大同)

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

    推荐文章
      热点阅读