仅显示日期部分

时间:2013-06-28 22:25:48

标签: c# datetime asp.net-mvc-4 razor

我只想在页面上显示日期。

SQL列具有类型日期。

模型

public System.DateTime EndDate { get; set; }

查看

@Html.DisplayFor(modelItem => item.EndDate.Date)

这没有给我任何警告或错误,但时间仍显示在页面上。

3 个答案:

答案 0 :(得分:4)

DateTime.Date返回DateTime的新实例,时间组件设置为午夜(而不是完全删除时间),它仅对标准化日期/时间值有用,不用于显示目的

无论如何,您不需要DisplayFor,您可以直接呈现日期:

@item.EndDate.ToString("yyyy-MM-dd")

答案 1 :(得分:3)

您可以使用日期。ToShortDateString()或使用custom date/time string format

ToShortDateString()的好处在于它具有文化敏感性,使您的应用程序更易于访问。

如果要使用Html.DisplayFor模板帮助程序,则可能需要构建ShortDateTime.cshtml显示模板。在此处了解更多相关信息: https://stackoverflow.com/a/6001836/941058

答案 2 :(得分:1)

尝试ToString()日期格式化程序:

http://msdn.microsoft.com/en-us/library/8kb3ddd4.aspx

示例:

@Html.DisplayFor(modelItem => item.EndDate.Date.ToString("MMMM dd, yyyy")