ビューまたは部分ビューからレイアウト ヘッドに CSS または JavaScript ファイルを追加する 質問する

ビューまたは部分ビューからレイアウト ヘッドに CSS または JavaScript ファイルを追加する 質問する

レイアウトページヘッダー:

<head>
    <link href="@Url.Content("~/Content/themes/base/Site.css")"
          rel="stylesheet" type="text/css" />
</head>

アプリケーションのビュー (AnotherView) には次のものが必要です。

<link href="@Url.Content("~/Content/themes/base/AnotherPage.css")"
      rel="stylesheet" type="text/css" />

AnotherView には部分ビュー (AnotherPartial) があり、次のものが必要です。

<link href="@Url.Content("~/Content/themes/base/AnotherPartial.css")"
      rel="stylesheet" type="text/css" />

質問: どうすれば追加これらのCSSファイルリンクAnotherView と AnotherPartial はレイアウト ヘッドにリンクします?

AnotherPage には複数の Partial が存在する可能性があるため、RenderSection は適切なアイデアではありません。すべての CSS を head に追加することは、動的に変更されるため (Anotherpages に依存するため) 役に立ちません。

ベストアンサー1

レイアウト:

<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.6.2.min.js")" type="text/javascript"></script>
        <script src="@Url.Content("~/Scripts/modernizr-2.0.6-development-only.js")" type="text/javascript"></script>
        @if (IsSectionDefined("AddToHead"))
        {
            @RenderSection("AddToHead", required: false)
        }

        @RenderSection("AddToHeadAnotherWay", required: false)
    </head>

ビュー:

@model ProjectsExt.Models.DirectoryObject

@section AddToHead{
    <link href="@Url.Content("~/Content/Upload.css")" rel="stylesheet" type="text/css" />
}

おすすめ記事