格式化DateTime错误"模板只能用于字段访问,属性访问,单维数组索引.."

Tou*_*ubi 10 c# asp.net-mvc razor asp.net-mvc-3

在MVC Razor视图中,我试图格式化DateTime字段以仅显示时间.使用下面的代码我收到错误"模板只能用于字段访问,属性访问,单维数组索引或单参数自定义索引器表达式."

<td>@(Html.DisplayFor(m=>row.LastUpdatedDate.ToString("HH:mm:ss")))</td>
Run Code Online (Sandbox Code Playgroud)

任何帮助请问是什么导致此错误以及如何解决它?

谢谢你的帮助.

小智 16

我遇到了同样的问题,我已经解决了这个问题.如果您想将"LastUpdatedDate"转换为特定格式,那么您可以尝试这样做:

@Html.TextBoxFor(m=>row.LastUpdatedDate, 
    new { @Value = Convert.ToString(row.LastUpdatedDate.ToShortDateString()) })
Run Code Online (Sandbox Code Playgroud)


Muf*_*aka 14

DisplayFor需要一个表达式,用于标识包含要显示的属性的对象.它将使用内置或自定义模板来呈现该显示.您尝试将显示逻辑提供为表达式参数,该参数无效.

使用

@String.Format("HH:mm:ss", Model.row.LastUpdateDate)
Run Code Online (Sandbox Code Playgroud)

要么

@Model.row.LastUpdateDate.ToString("HH:mm:ss")
Run Code Online (Sandbox Code Playgroud)