C# 如何从_Layout.cshtml呈现特定字段
我有Home.cshtml和_layout.cshtml这样的页面。_layout.cshtml中的页眉、菜单栏和页脚类。我只想要my Home.cshtml的页眉和页脚,如何获取 在_layout.cshtml中执行以下操作C# 如何从_Layout.cshtml呈现特定字段,c#,asp.net-mvc,asp.net-mvc-4,razor,C#,Asp.net Mvc,Asp.net Mvc 4,Razor,我有Home.cshtml和_layout.cshtml这样的页面。_layout.cshtml中的页眉、菜单栏和页脚类。我只想要my Home.cshtml的页眉和页脚,如何获取 在_layout.cshtml中执行以下操作 <html lang="en"> <head> </head> <body> <div class="header"> /*code*/ </div>
<html lang="en">
<head>
</head>
<body>
<div class="header">
/*code*/
</div>
<div class="Menubar">
/*code*/
</div>
<div class="Footer">
/*code*/
</div>
</body>
/*代码*/
/*代码*/
/*代码*/
请尝试以下代码片段
\u layout.cshtml
<body>
@section header
{
<div class="header">
/*code*/
</div>
}
@section Menubar
{
<div class="Menubar">
/*code*/
</div>
}
@section Footer
{
<div class="Footer">
/*code*/
</div>
}
</body>
@RenderSection("Menubar", false)
注意:我已经为您各自的分区添加了三个部分。默认情况下,它将在所有页面中显示其内容。如果要在任何视图中隐藏任何部分,请将第二个参数传递为false。我尝试了这个方法,但其他方法也可以@Home.cshtml中的Menubar{}部分和_布局中的@RenderSection(“Menubar”,false)方法。如果在_布局中写入@RenderSection(“Menubar,false)方法,则每次都会隐藏Menubar部分。那么为什么要在Home.cshtml中添加Manubar部分呢?是的,你是对的。我试了一下,我们建议它工作正常。但如果我把会话放在_布局中。我必须在所有其他页面上实现。我说得对吗?所以我使用另一个布局,我需要3页这样的页面。你能详细说明你的场景吗?