在我的mvc 6项目中,我在使用“asp-format”标签和taghelper元素时遇到了一个问题。
其思想是以如下方式格式化日期输入元素:
<input asp-for="StartDate" asp-format="{0:dd/MM/yyyy}" />
这个“StartDate”属性在我的模型中,声明方式如下:
public DateTime StartDate {get; set; }
出于一个奇怪的原因,这个元素从来没有格式化,并且总是这样显示:
---> 02/29/2016 00:00:00
所以我创建了一个ViewModel类并定义了一个属性来保存整个Person模型。
public class PersonViewModel
{
public Person Johndoe {get; set; }
}
在视图中使用这个类,格式就可以正常工作。
<input asp-for="Johndoe.StartDate" asp-format="{0:dd/MM/yyyy}" />
---> 29/02/2016
4条答案
按热度按时间7d7tgy0s1#
您可以在模型本身中提供格式,如
在你看来
2)您也可以在模型类中不提供日期格式的情况下执行此操作
kqqjbcuj2#
添加类型=将格式化日期的日期
0lvr5msh3#
我不得不用
以及
在我的视图模型中。
我的观点如下:
hpcdzsge4#
asp-format仅在我添加[DataType(DataType.Text)]时才起作用
这将停止浏览器日期时间选取器的工作,但您可以通过任何第三方日期选取器来修复,例如bootstrap-datepicker