我知道有很多关于这个错误的问题,总有答案
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>@ViewBag.Title</title>
<link href="@Url.Content("~/Content/Site.css")" rel="stylesheet" type="text/css" />
<script src="@Url.Content("~/Scripts/jquery-1.5.1.min.js")"></script>
<script src="@Url.Content("~/Scripts/modernizr-1.7.min.js")"></script>
</head>
<body>
<ul id="menu">
<li>@Html.ActionLink("Główna", "Index", "Home")</li>
<li>@Html.ActionLink("Uzytkownicy", "Index", "Database")</li>
<li>@Html.ActionLink("O systemie", "About", "Home")</li>
</ul>
<section id="main">
@RenderBody()
<p>Copyright 2015. All Rights Reserved.</p>
</section>
</body>
</html>
但我的_Layout.cshtml文件中没有该部分。 我的档案:
{{1}}
我试图:
这些都没有帮助我。
答案 0 :(得分:5)
Section就像您在布局中定义的占位符,并从特定视图中注入一些真实内容。当页面运行时,您从页面部分传递的内容将被注入到布局中调用RenderSection()
的位置。
您的视图看起来正在通过featured
部分传递内容,但您的布局没有“精选”部分的定义。所以你需要将它添加到布局文件
<body>
<section id="main">
@RenderBody()
@RenderSection("featured", required: false)
</section>
</body>
或者从特定视图中删除featured section
代码。
您可能需要在布局中保留@RenderSection("scripts",required:false)
,这有助于您在特定视图中添加特定于页面的JavaScript。