Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 如何在Razor视图中格式化日期时间?_Asp.net Mvc_Asp.net Mvc 3 - Fatal编程技术网

Asp.net mvc 如何在Razor视图中格式化日期时间?

Asp.net mvc 如何在Razor视图中格式化日期时间?,asp.net-mvc,asp.net-mvc-3,Asp.net Mvc,Asp.net Mvc 3,我有如下变量: DateTime crd = a.CreationDate; (shown as a variable in C# but available in razor views) 我想使用以下格式将其显示为日期:11/06/2011 02:11 理想情况下,我希望有一些HTML帮助程序。有没有人已经有了可以满足我需要的东西 在您的模型中,您可以根据需要使用格式设置属性 [DisplayFormat(DataFormatString = "{0:dd MMM yyyy}")] pub

我有如下变量:

DateTime crd = a.CreationDate; (shown as a variable in C# but available in razor views)
我想使用以下格式将其显示为日期:11/06/2011 02:11


理想情况下,我希望有一些HTML帮助程序。有没有人已经有了可以满足我需要的东西

在您的模型中,您可以根据需要使用格式设置属性

[DisplayFormat(DataFormatString = "{0:dd MMM yyyy}")]
pubilc DateTime CreationDate{ get; set }

您可以像中那样创建显示模板或编辑器模板,但该格式将应用于给定范围内的所有DateTime变量(可能是好的,也可能是坏的)

使用该属性可以很好地定义单个字段的格式

请记住对上述任一项使用
@Html.DisplayFor(model=>model.crd)
和/或
@Html.EditorFor(model=>model.crd)
语法

您也可以在视图中始终使用该方法进行更多特殊格式设置

@crd.ToString("MM/dd/yyyy HH:mm") // time using a 24-hour clock
怎么样

@crd.ToShortDateString()文件


使用以下代码设置日期格式:

@string.Format("{0:ddd}",Convert.ToDateTime(Html.DisplayFor(model => model.Booking.BookingFromDate).ToString()))
如果日期字段具有必需属性,则不希望验证
null
值。
另一方面,如果您有一个日期列表,并且想要获取第一个日期,则可以使用三元运算符:

Begin Date: @string.Format("{0:MM/dd/yyyy}", Convert.ToDateTime(Model.aList.Where(z => z.Counter == 1).Select(z => z.Begin_date).First()))
试试Razor视图


@Html.Raw(item.Today\u Date.Date.ToString(“dd.MM.yyyy”))

为了完整性,还可以使用字符串插值。我不认为这是一个可用的功能时,问这个问题

@($"{crd:dd/mm/yyyy HH:mm}")

此答案可能重复的地方应该改进。尝试了您建议的我自己的日期格式,因此复制了提取属性,但仍然不起作用。有什么想法吗?好的,快点说。我使用的是@Model.DateOfBirth,但是为了让DisplayFormat属性正常工作,您需要使用@Html.DisplayFor(Model=>Model.DateOfBirth)。这对我不起作用。我是这样渲染字段的:
是否正确?您可能需要在数据批注中使用ApplyFormatInEditMode=true,如下所示。。。[DisplayFormat(ApplyFormatInEditMode=true,DataFormatString=“{0:dd-MMM-yyyy}”)]或尝试@Html.Raw(item.Today\u-Date.Value.ToString(“dd.MM.yyyy”))确保还为DisplayFormat属性指定了ApplyFormatInEditMode=true。