我希望以我自己的格式在标签上显示日期和时间,并且来自数据库的日期时间看起来不太好

时间:2016-05-03 03:10:44

标签: asp.net-mvc asp.net-mvc-4

使用此

@Html.Label( msg[i].datetime.ToString())

(4/23/2016 5:09:00 AM)但时间以此格式显示

但我希望以这种格式显示日期和时间(23/4/2016 5:09 AM)

在我的聊天应用程序和

我将此日期时间保存在我的数据库中

 @Html.HiddenFor(model => model.datetime, new { @Value = DateTime.Now })

4 个答案:

答案 0 :(得分:0)

您可以为标签控制创建扩展方法,以显示所需的日期时间格式。

public static class HelperMethods
{
     public static HtmlString MyDateTime(this HtmlHelper htmlHelper, DateTime date)
     {
        return LabelExtensions.Label(htmlHelper, "LblDate", date.ToString("dd/MM/yyyy h:mm tt"));
     }
}

在.cshtml页面中使用如下所示

@Html.MyDateTime(DateTime.Now)

答案 1 :(得分:0)

试试这个: 如果datetime不可为空,这将有效。

@Html.Label( msg[i].datetime.ToString("dd/MM/yyyy h:mm tt"))

答案 2 :(得分:0)

有很多方法可以实现这一目标。对我来说最简单的方法是在视图中提供字符串格式化程序。下面是字符串格式化程序的输出:

23/4/2016 5:09 AM(没有前导零的月份 - 就像你指定的那样)

@Html.Label(msg[i].datetime.ToString("dd/M/yyyy h:mm tt"))

23/04/2016 5:09 AM(领先零的月份)

@Html.Label(msg[i].datetime.ToString("dd/MM/yyyy h:mm tt"))

如果您需要更多样品,请查看此页面:

http://www.csharp-examples.net/string-format-datetime/

答案 3 :(得分:0)

尝试这样的事情:

@ Html.Label(string.Format(" {0:dd / MM / yyyy hh:mm:ss}",msg [i] .datetime))

希望它能帮到你;)