Asp.net mvc 4 如何在_Layout.cshtml底部呈现脚本的视图或部分视图?

Asp.net mvc 4 如何在_Layout.cshtml底部呈现脚本的视图或部分视图?,asp.net-mvc-4,scriptbundle,Asp.net Mvc 4,Scriptbundle,我在呈现部分视图的脚本标记时遇到了一个问题,这些标记应该呈现在_Layout.cshtml页面的底部。我找到了解决方案,您可能不希望呈现每个页面上的所有内容。剖切可以让你控制它 在_Layout.cshtml中定义脚本标记,如下所示 <script src="/scripts/libs/jquery-ui-1.10.3.min.js"></script> <script src="~/Scripts/jquery.validate.min.js"></s

我在呈现部分视图的脚本标记时遇到了一个问题,这些标记应该呈现在_Layout.cshtml页面的底部。

我找到了解决方案,您可能不希望呈现每个页面上的所有内容。剖切可以让你控制它

在_Layout.cshtml中定义脚本标记,如下所示

<script src="/scripts/libs/jquery-ui-1.10.3.min.js"></script>
<script src="~/Scripts/jquery.validate.min.js"></script>
<script src="~/Scripts/jquery.validate.unobtrusive.js"></script>
@if (IsSectionDefined("bottomScripts"))
{
    @RenderSection("bottomScripts", required: false) 
}
这是MVC中布局和视图的标准结构

_Layout.cshtml

View1.cshtml

View2.cshtml


脚本不应在局部视图中。您使用什么帮助程序?我正在使用文件的@Scripts.Renderpath
@section bottomScripts{
<script src="~/Scripts/jquery.unobtrusive-ajax.min.js"></script>
}
<!DOCTYPE html>

<html lang="en-us">
<head>
    <meta charset=" utf-8">
    <title>@ViewBag.Title</title>
    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">

    <link rel="stylesheet" href="~/content/css/stye1.css" />
    <link rel="stylesheet" href="~/content/css/style2.css" />
    @if (IsSectionDefined("myStyles"))
    { 
       @RenderSection("myStyles", required: false);
    }
</head>
<body>
<header>
    <a href="/Index">
        <h1>My Website<small>Your Slogan</small></h1>
    </a>
</header>
<div>
    @RenderBody()
</div>
<script src="~/Scripts/script1.js"></script>
<script src="~/Scripts/script2.js"></script>
@if (IsSectionDefined("myScripts"))
{
    @RenderSection("myScripts", required: false);
}
</body>
</html>
<div>This is View1</div>
@section myStyles{
<link rel="stylesheet" href="~/Pagespecificstyle.css" />
}
@section myScripts{
<script src="~/PageSpecificScript.js"></script>
}
<div>This is View2</div>
@section myStyles{
<link rel="stylesheet" href="~/Pagespecificstyle2.css" />
}
@section myScripts{
<script src="~/PageSpecificScript2.js"></script>
}