在多个部分视图中拆分单个表单被认为是不好的做法吗?

时间:2011-07-15 18:42:05

标签: c# asp.net-mvc

我目前正在开发一个ASP.NET MVC 3应用程序,我有一个特定的视图,它设置为向导(使用jQuery插件)。每个向导步骤都是单个表单的一部分,其中每个“步骤”被拆分为其自己的<div>元素。我决定为每个“步骤”的内容创建部分视图。我这样做有几个原因。一个是它保持每个步骤的代码整洁有序。另一个是它允许我更容易/整齐地在服务器端包含或排除向导中的步骤。

现在,我的“主要”视图如下所示:

@using (Html.BeginForm)
{
    <div class="step" id="step1">
        @Html.Partial("Step1")
    </div>

    <div class="step" id="step2">
        @Html.Partial("Step2")
    </div>
}

我想知道如果做这样的事情会被视为不好的做法,我是否应该将所有“步骤”的代码合并到一个视图中?

1 个答案:

答案 0 :(得分:2)

不,这种方法没有任何内在错误。

性能开销很小,但可能没有任何后果。

如果它让您更容易开发和维护,请随意。

编辑:如果您担心映射子模型,正如我们在评论中提到的那样,请考虑在局部视图中使用ViewData.ModelMetadata.PropertyName来派生输入控件的ID。