0

我正在我的控制器中构建一个模型,我想通过另一个控制器上的 ActionResult。所以在控制器中我有:

Public Class IndexViewModel
    Sub New()
        Ribbon = New Ribbon.RibbonViewModel
        etc...
    End Sub

    Property Ribbon As Ribbon.RibbonViewModel
End Class

然后在 Razor 视图中,我调用它来渲染它,如下所示:

@ModelType ANA.Inbox.IndexViewModel

<div>
    @Html.Action("Index", "Ribbon", Model.Ribbon)
</div>

转到 RibbonController,它看起来像:

Function Index(Optional Model As RibbonViewModel = Nothing) As PartialViewResult
    If (Model Is Nothing) Then
        Model = New RibbonViewModel
    End If
    Return PartialView(Model)
End Function

在我点击第一个 If() 之前,我正在调用 RibbonViewModel 的构造函数来创建一个新的,而不是使用我传递的那个。有任何想法吗?

4

1 回答 1

0

如果你在 Action 中没有做任何复杂的事情,最好使用 Html.Partial 方法来渲染局部视图而不调用 action 方法

于 2013-09-11T20:49:53.927 回答