1

我在cshtml视图中有一些这样的代码

@{  int i = 0;
    foreach (var record in Model.Records)
    {
    <tr>
        <td>@record.CreatedDate</td>
        <td>@Html.DisplayFor(x => x.Records[i].CreatedDate)</td>
    </tr>
        i++;
    }
}

在我的 ~/Views/Display 文件夹中,我有一个名为 DateTime.cshtml 的文件,其中包含

<p>@ViewData.Model.ToShortDateString()</p>

所以我的观点是渲染两个版本的 CreatedDate,一个带有完整的 DateTime 字符串,一个带有短日期字符串。

我是否可以将我的 ASP.NET MVC4 项目配置为在显示 DateTime 时使用我创建的显示模板,而不显式调用 DisplayFor?即“@record.CreatedDate”行如何使用我的 DateTime 模板?

4

1 回答 1

2

不,你不能。无法通过以下代码配置 MVC 以使用模板:

'@record.CreatedDate'

顺便说一句,您将不得不继续使用DisplayFor它并不太写...

于 2012-11-15T17:14:52.127 回答