gpt4 book ai didi

asp.net-mvc - 重用 MVC View 来显示数据和编辑数据

转载 作者:行者123 更新时间:2023-12-01 01:22:44 27 4
gpt4 key购买 nike

我有两个 MVC View ……一个用于显示详细信息,另一个用于编辑值。除了在切换到编辑器 View 时 DisplayFor 更改为 EditorFor 之外,它们使用几乎相同的模板。如何在 View 中重用我的基本布局结构,以便如果我需要更改基本布局,我只需在一个位置而不是多个 View 中执行此操作?

以下是显示 View 中使用的表格示例:

<table>
<tr>
<td class="label">First Name:</td>
<td class="field">@Html.DisplayFor(x => Model.FirstName)</td>
</tr>
<tr>
<td class="label">Last Name:</td>
<td class="field">@Html.DisplayFor(x => Model.LastName)</td>
</tr>
<tr>
<td class="label">Email:</td>
<td class="field">@Html.DisplayFor(x => Model.Email)</td>
</tr>
</table>

最佳答案

您可以向 View 模型添加 Mode 属性:

public bool IsInEditMode { get; set; }

然后,您的 Controller 可以使用相同的 View 和模型,只需相应地设置此属性。你的观点最终会像:
<table>
<tr>
<td class="label">First Name:</td>
<td class="field">
@if (!Model.IsInEditMode)
{
@Html.DisplayFor(x => Model.FirstName)
}
else
{
(render EditorFor plus any validation helpers)
}
</td>
</tr>
...etc...
</table>

关于asp.net-mvc - 重用 MVC View 来显示数据和编辑数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8525486/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com