【发布时间】:2013-11-08 17:12:24
【问题描述】:
在我的 MVC 视图中,我需要在模型对象中显示值。
@model List<School.Model.Student_Model>
我在表格中显示了这些学生数据。
@foreach (var item in Model)
{
<tr>
...
<td>@Html.DisplayFor(model => item.RegisterDate)</td>
</tr>
}
RegisterDate 可以为空DateTime?
如果 RegisterDate 为空,我喜欢在我的表格中显示消息 “未提供日期”。
<td>@Html.DisplayFor(model => item.RegisterDate.HasValue?item.RegisterDate.HasValue.ToString():"-")</td>
如果我在上面使用它会给我以下错误
异常详情:System.InvalidOperationException:模板只能用于字段访问、属性访问、单维数组索引或单参数自定义索引器表达式。
如果我使用单独的 If-else 条件,我将能够做到这一点。
@if(item.RegisterDate.HasValue)
{
<td>@Html.DisplayFor(model => item.RegisterDate)</td>
}
else
{
<td>date is not provided</td>
}
有什么办法吗?
【问题讨论】:
标签: asp.net-mvc-3 razor