我正在创建寻呼机局部视图,它从父视图中获取一个页面计数参数,并在视图中呈现分页数字
//List.cshtml
bla bla data here
@Html.Action("Index", "Pager", new {pageCount = 120})
现在在寻呼机内部视图中,我想用新的页码重复父动作...我想在我的局部视图中使用页面按钮,只需使用欣赏页面参数重复父动作,但是当我打电话时{{1} MVC将null作为局部视图的动作而不是父视图,并抛出不能直接调用部分动作的异常
Url.Action(null, new {page = curPage-1}
我的意思是,我希望<a title="go to page @(curPage-1)" rel="prev" href="@Url.Action(null, new {page = curPage-1})">
<span class="page-numbers prev">prev </span>
</a>
代替href = domain/list/id?page=2
有没有办法用新的附加参数重复部分动作的父动作?
答案 0 :(得分:1)
在父视图中使用
@{
ViewData["ActionName"] = "MyACtion";
ViewData["ControllerName"] = "MyControllerACtion";
}
然后调用您的部分视图。 在这里,您可以从ViewData
中检索值在局部视图内
@Html.Action(ViewData["ActionName"], ViewData["ControllerName"], new {pageCount = 120})
OR
@{
var action = ViewData["ActionName"];
var controller = ViewData["ControllerName"];
}
@Html.Action(@action, @controller, new {pageCount = 120})