我从 SQL db 中提取日期时间,格式为hh:mm dd/mm/yyyy
使用 Razor 语法,我可以显示存储在数据库中的日期
@Html.DisplayFor(modelItem => item.Updated)
我希望 Razor 以以下格式显示dd MMM yyyy
所以我按照另一个 StackOverflow 答案尝试了以下操作:
@Html.DisplayFor(modelItem => item.Updated.ToString("dd MMM yyyy"))
但是,这会产生以下错误:
“/”应用程序中的服务器错误。
模板只能与字段访问、属性访问、一维数组索引或单参数自定义索引器表达式一起使用。
说明:执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。
异常详细信息:System.InvalidOperationException:模板只能用于字段访问、属性访问、单维数组索引或单参数自定义索引器表达式。
源错误:
第 36 行: 第 37 行: 第 38 行:
@Html.DisplayFor(modelItem => item.Updated.ToString("dd MMM yyyy")) 第 39 行: 第 40 行:
我刚刚开始掌握 ASP.NET 等...我不确定如何创建视图模型来尝试这个示例,因为我首先使用自动生成的 edmx 文件构建 DB:
[DisplayFormat(DataFormatString = "{0:dd MMM yyyy}")]
pubilc DateTime Updated { get; set }
有什么建议么?
目前这些工作。我要做的就是更改“更新”属性的显示格式。我的视图文件: http: //pastebin.com/Ywn8Z0TV
我的控制器: http: //pastebin.com/1jAih6AE
我的模型: http: //pastebin.com/UC61QjFZ
更新:对于那些说应该是 item => item.Updated 的人...
Error 1 A local variable named 'item' cannot be declared in this scope because it would give a different meaning to 'item', which is already used in a 'parent or current' scope to denote something else