【发布时间】:2011-12-05 22:22:20
【问题描述】:
我对此感到困惑: 我有一个动作,比如 Parent,在相应的视图文件中,我调用了一个子动作,比如 Child,Parent 和 Child 动作都在同一个控制器中。
我需要 Child 动作和 Parent 动作来共享 ViewBag 中的一些数据。现在,我应该做什么?这是我的问题:
当我在父视图文件中调用子操作时,我将视图包传递给它,如下所示: @Html.Action(ViewBag)。 在我的孩子行动中,我这样做:
public PartialViewResult Child(Object ViewBag)
{
//using the data in ViewBag
}
这是正确的方法吗? viewbag 对象是通过引用传递还是与原始 viewbag 不同的对象(需要更多内存)?
或者如果子操作默认与其调用父操作共享视图包?
从 Darin Dimitrov 的回答中,我知道我不能做这样的事情:@Html.Action(ViewBag)
但我确实需要传递子动作多参数,我该怎么办?
【问题讨论】:
-
请不要在您的问题前加上“[.NET MVC3]”之类的东西。在Stack Overflow 上,我们为此目的使用标签。
-
如果您的子操作与父操作没有完全分开,您可能需要考虑 Html.Partial
标签: asp.net-mvc-3 viewbag child-actions