如何仅添加部分视图所需的脚本和 css 文件

Jos*_*980 2 html css asp.net-mvc

我创建了一些使用 _layout 部分视图的视图,但我不想包含每个 css 或脚本包。在视图中包含脚本或 css 文件的最佳方法是什么?

<head>
 <link href="Content/style.css" .../>
 <script src="Scripts/myscript.js" ...></script>
</head>
Run Code Online (Sandbox Code Playgroud)

我怎样才能让视图呈现类似这样的东西?使用部分视图的视图中没有 head 标签。

小智 5

使用 Razor 布局,您可以使用部分来定义您希望在部分而不是主布局文件中加载的脚本/CSS 文件。

您可以在 Scott Guthrie 的博客上阅读有关部分的更多信息

在您共享的 _Layout.cshtml 文件中,您可以添加

<head>
    <meta charset="utf-8" />
    <title>@ViewBag.Title</title>
    @RenderSection("css")
    @RenderSection("scripts")
</head>
Run Code Online (Sandbox Code Playgroud)

并且在特定的视图中...

<div> lol some content </div>
@section css {
   <link rel="stylesheet" type="text/css" href="homeTheme.css">
}
@section scripts {
   <script src="../../Scripts/home.js"></script>
}
Run Code Online (Sandbox Code Playgroud)