[DataType(DataType.Date)]
[DisplayFormat(DataFormatString = "{0: dd-mm-yyyy}")]
public DateTime DateProcessed { get; set; }
这是我的Data Model
,它的给予是01/01/2015
但我需要这种格式January/01/2015
结果。
我尝试过使用ToShortDateString()
。但我有
错误模板只能用于字段访问,属性访问,单维数组索引或单参数自定义索引器表达式。
尽可能多。我希望它在模型中而不是使用View。但如果它无法提供帮助。
什么都有效。
答案 0 :(得分:4)
试试这个;
[DataType(DataType.Date)]
[DisplayFormat(DataFormatString = "{0: MMMM/dd/yyyy}")]
public DateTime DateProcessed { get; set; }
参考:here。
但是,如果你坚持使用单个日期格式,你也可以“破解”你的视图而不触及模型。
像这样;
<div>
<dl class="dl-horizontal">
<dt>@Html.DisplayNameFor(model => model.DateProcessed)</dt>
<dd>@Html.DisplayFor(model => model.DateProcessed)</dd>
</dl>
</div>
而成;
<div>
<dl class="dl-horizontal">
<dt>@Html.DisplayNameFor(model => model.DateProcessed)</dt>
<dd>
@{string formattedDate = Model.DateProcessed.ToString("MMMM/dd/yyyy");}
@Html.DisplayFor(model => formattedDate)
</dd>
</dl>
</div>
将以正确的格式显示日期。
答案 1 :(得分:0)
试试这个:
[DataType(DataType.Date)]
[DisplayFormat(DataFormatString = "{0: MMMM/dd/yyyy}", ApplyFormatInEditMode = true)]
public DateTime DateProcessed { get; set; }
如果您不在模型类中使用日期格式,请尝试下面的:
首先将日期属性设置如下
public Nullable<System.DateTime> DateProcessed { get; set; }
然后你的查看就像这样:
@Html.TextBoxFor(m => m.DateProcessed,"{0: MMMM/dd/yyyy}", placeholder = "MMMM/dd/yyyy" })