我是MVC2的新手,我的问题应该是非常基本的。至少我是这么认为的,直到我无法在网上找到任何答案,所以我在这里。
我有一个可以有0到多个孩子的父对象池问题。
在Pool的详细信息视图中,除了Pool的属性之外,我在问题操作列表中使用RenderAction渲染他的孩子,到目前为止,非常好。
在我的列表视图问题中(总是在详细信息视图中呈现),我想要一个按钮来启动Question对象的Create操作。我的问题是,我不知道如何将Pool对象(我的详细信息视图的模型)传递给Create操作,以便我可以将我的问题链接到正确的Pool。
有没有办法通过RenderAction访问“包含”视图中的“主”模型,如果没有,那么实现解决方法的最佳方法是什么。
由于
答案 0 :(得分:1)
这是我在MVC中最喜欢的隐藏宝石之一..这将为您提供父模型:
<% object parentModel = ViewContext.ParentActionViewContext.ViewData.Model; %>
答案 1 :(得分:0)
Clicktricity的回答帮助我尝试访问Html.Action的父模型时出现类似问题。我在同一个调用中传递模型和docOrdinal时遇到了麻烦,并且能够解决它。
[ChildActionOnly]
public ActionResult ActiveDocumentsDegree(string docOrdinal)
{
var model = (UserModel)ControllerContext.ParentActionViewContext.ViewData.Model;
.
.
.
}