我创建了一个新的 MVC4 互联网应用程序。我只是在关注 ASP.NET MVC4 in Action 一书。本章是 Ajax 是 MVC 中的 ASP.NET。索引视图是这样的
@section head{
<script type ="text/javascript"
src="@Url.Content("~/Scripts/AjaxDemo.js")"></script>
}
@Html.ActionLink("Show the privacy policy", "PrivacyPolicy", null, new{id="privacyLink"})
<div id="privacy"></div>
部分视图包含一些非常基本的标记。
<h2>Our Commitment to privacy</h2>
This is sample priavcy policy.
在 index.cshtml 文件中给出路径的 AjaxDemo.js 文件中,我有小代码
$(document).ready(function() {
$('privacyLink').click(function(event) {
event.preventDefault();
var url = $(this).attr('href');
$('#privacy').load(url);
});
});
现在,当我运行此应用程序并手动将链接作为http://localhost:19208/customajax
我收到错误消息
The following sections have been defined but have not been rendered for the layout page "~/Views/Shared/_Layout.cshtml": "head".
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.Web.HttpException: The following sections have been defined but have not been rendered for the layout page "~/Views/Shared/_Layout.cshtml": "head".
知道我在这里做错了什么吗?
默认情况下_Layout.cshtml
,我没有对其进行任何更改
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>@ViewBag.Title - My ASP.NET MVC Application</title>
<link href="~/favicon.ico" rel="shortcut icon" type="image/x-icon" />
<meta name="viewport" content="width=device-width" />
@Styles.Render("~/Content/css")
@Scripts.Render("~/bundles/modernizr")
</head>
<body>
<header>
<div class="content-wrapper">
<div class="float-left">
<p class="site-title">@Html.ActionLink("your logo here", "Index", "Home")</p>
</div>
<div class="float-right">
<section id="login">
@Html.Partial("_LoginPartial")
</section>
<nav>
<ul id="menu">
<li>@Html.ActionLink("Home", "Index", "Home")</li>
<li>@Html.ActionLink("About", "About", "Home")</li>
<li>@Html.ActionLink("Contact", "Contact", "Home")</li>
</ul>
</nav>
</div>
</div>
</header>
<div id="body">
@RenderSection("featured", required: false)
<section class="content-wrapper main-content clear-fix">
@RenderBody()
</section>
</div>
<footer>
<div class="content-wrapper">
<div class="float-left">
<p>© @DateTime.Now.Year - My ASP.NET MVC Application</p>
</div>
</div>
</footer>
@Scripts.Render("~/bundles/jquery")
@RenderSection("scripts", required: false)
</body>
</html>