首页 > 解决方案 > 为什么像 dd-MMM-yyyy 这样的存储日期会被转换为 dd-MM-yyyy?

问题描述

我有一个非常不同的问题。

我已将我的 mvc 应用程序部署到实时服务器。

它具有像“01/07/2019”这样的日期时间格式。

我有一个从 jquery datetimepicker 填充的文本框。它像 2019 年 7 月 27 日这样填充,但在 sql 表中它存储类似2019-07-17 00:00:00.000 ,并且在将数据从数据库绑定到 textboxfor 之后,它看起来像这样 2019 年 7 月 27 日。

保存后,所有大于 12 的日期都会引发错误,例如13/07/2019,但对于 2019 年 7 月 13 日,它运行良好。

如何解决这个问题?

@Html.EditorFor(model => model.InspectionReport.InspectionDate, new { htmlAttributes = new { @class = "form-control  input-sm pull-right text-box single-line" } })

jQuery:

$("#InspectionReport_InspectionDate").datepicker({ dateFormat: 'dd/M/yy' });

班级:

[Required]
[Display(Name = "Inspection Date")]
[DisplayFormat(DataFormatString = "{0: dd-MMM-yyyy}")]
public DateTime InspectionDate { get; set; }

标签: c#jquerysqlasp.net-mvcdatetimepicker

解决方案


在数据类型DateTime(2)的日期字段中,日期值存储为没有格式的值。

因此,要显示该值,请应用您希望的格式,否则将应用默认格式。


推荐阅读