【发布时间】:2018-01-24 23:49:07
【问题描述】:
我有一个 _Layout.cshtml 作为页面的顶级布局(包括页眉和页脚等)。然后,我有一个 _MainLayout.cshtml 我想包含两个部分页面。请参阅下面的代码。
为了简单起见,我现在要做的就是显示两个部分页面(每个页面都包含简单的文本“Hello World”)。听起来很简单吧? 不是!
_MainLayout.cshtml
@{
Layout = "~/Views/Shared/_Layout.cshtml";
}
<div>
<div class="large-2 columns" style="min-height: 800px; border-style: solid; border-width: thin; border-color: lightgray; ">
@Html.Partial("~/Views/Shared/MenuPartial.cshtml");
</div>
<div class="large-10 columns" style="min-height: 800px; border-style: solid; border-width: thin; border-color: lightgray; ">
@Html.Partial("~/Views/Shared/ContentPartial.cshtml");
</div>
</div>
此布局中的部分是否需要是布局本身?我尝试了很多不同的事情,以至于我完全感到困惑和沮丧。
最终这些都需要有控制器和大量的 JavaScript。但现在,我只想显示两个非常简单的局部视图。
【问题讨论】:
-
您向我们展示了哪个视图? (如果你声称
_Layout.cshtml是你的布局,那么拥有Layout = ".._MainLayout.cshtml"是没有意义的) -
你是对的。我搞砸了。问题已更新。我在锁定的计算机上工作,因此无法从实际代码中复制和粘贴。 :-(
-
不清楚你想做什么。您想创建嵌套布局吗? - 如果是这样this article我的帮助
-
好吧,我使用的是嵌套布局,这可能就是我如此困惑的原因。这两个对局部视图的引用是否需要引用单独的局部视图布局,因为我是从布局中引用它们?我能够让嵌套布局与部分一起使用,但我真的在部分视图上苦苦挣扎。最终,我需要一些 JavaScript 来根据用户选择在一个局部视图上显示 7 个不同菜单中的一个,而在另一个局部视图上显示的内容将取决于用户在另一个局部视图中从该菜单中进行的选择。
-
我不明白你最后的评论(这真的没有意义)。您想使用嵌套布局有什么特别的原因吗?
标签: asp.net-mvc-4 razor asp.net-mvc-partialview