首页 > 解决方案 > c# - razor - mvc - 视图定义的分页 - 如何复制 RenderBody 行为?

问题描述

在部分视图中,我有:

@Html.Partial("Page1")

这会在正确的位置呈现我的 Page1.cshtml 视图。

但我希望将其替换为类似于我_Layout页面上的 RenderBody 的东西。

@RenderBody()

在我的布局文件中,“@RenderBody”填充了View单击 an 后返回的任何内容@Html.ActionLink- 那么我如何模拟与RenderBody在部分视图中而不是布局中相同的行为?- 我的理解是您不能RenderBody在局部视图上使用。

我真正想要的是当我点击@Html.ActionLink("Page2", "Page2", "Menu", null, null)那个部分@Html.Partial("Page1")@Html.Partial("Page2")

为什么这在布局页面上看起来如此简单,但在“嵌套”局部视图上工作更多?


我试图将我的“布局”设置为“菜单”页面(也有一个“菜单”控制器)的索引,但这不起作用:

@{
    Layout = "~/Views/Menu/Index.cshtml";
}
<div class="container body-content">
    @RenderBody()
</div>

标签: c#asp.net-mvcrazor

解决方案


推荐阅读