【发布时间】:2014-07-21 11:51:45
【问题描述】:
我们的目标是拥有一个带有向导的页面。向导的每一步都是一个包含表单的局部视图。我只有一个控制器(保险),每个视图都有一个动作。操作接收发布的数据并返回下一步的视图模型,或包含错误详细信息的当前步骤的视图模型。
页面 (Index.cshtml) 有部分视图,呈现为
@Html.Partial("~/Views/Shared/_RegistrationCode.cshtml")
并且部分视图本身包含一个表单,呈现为
@using (Html.BeginForm("RegistrationCodeDetails", "Insurance", FormMethod.Post)) {
和一个
<input type="submit" name="nextButton" value="Verder" class="btn btn-success" />
在表单中提交。
代码按预期工作,直到第一个操作返回下一步的视图模型(部分视图_Product),使用
return PartialView("_Product", productViewModel);。 ActionResult 不会发送到局部视图,而是呈现为完整视图,因此结果是局部呈现为屏幕上的唯一内容。
我已经修改了@using (Ajax.BeginForm("RegistrationCodeDetails", "Insurance", new AjaxOptions { UpdateTargetId = "articleProductOutput", HttpMethod = "Post" })) {,但数据未在第二个向导步骤部分呈现。
编辑:
我们决定采用不同的方法:一个页面、一个控制器和基本上一个视图模型。立即呈现初始数据,使用 JSON 和部分视图检索取决于向导中其他步骤的数据。
【问题讨论】:
标签: c# asp.net-mvc mvvm