我正在尝试使用 MVC/Bootstrap/ASP.NET...
具体来说,我试图理解一种最佳实践,允许元素根据给定的逻辑(在本例中基于加载的 View )扩展到其容器之外。 (我也阅读了有关显示基于角色成员身份的元素的线程)。
我正在尝试复制此处显示的布局:URL To Sample 。它有一个 Bootstrap 轮播,我喜欢延伸整个宽度但仅显示在索引(主页)页面上的位置。在经典 MVC 结构之外实现此功能非常简单。
通过 MVC,我们拥有共享的 _Layout.cshtml 和加载 View 的容器...
<div class="container body-content">
@RenderBody()
</div>
轮播似乎需要其中之一
- 放置在 _Layout 页面上,如果加载的 View 不是索引页面,则隐藏
- 放置在索引页上并允许超出容器的宽度
我已经尝试了在线程中找到的内容,但无法干净地复制此布局。有人可以给点指导吗?
最佳答案
你可以stretch it with css ,或者更干净的解决方案可能是将其放在自己的(可选)部分中:
在_布局中:
@RenderSection("carousel", required: false)
<div class="container body-content">
@RenderBody()
</div>
在您的首页/主页(索引)文件中:
@section carousel {
// code for carousel
}
正如@Alex 所评论的,如果您的主页与其他页面明显不同,您可以使用单独的布局文件。为此,只需像这样设置“Layout”全局字符串即可;
在您的首页/主页(索引)文件中:
@{
Layout = "~/Views/Shared/_FrontPageLayout.cshtml"; // to use a separate file
Layout = null; // to not use a layout file
}
关于asp.net-mvc - 将元素扩展到 _Layout 容器 MVC ASP.NET 之外(首选方法?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21366325/