396 Stimmen

Styles.Render in MVC4

In einem .NET MVC4 Projekt wie funktioniert @Styles.Render funktioniert?

Ich meine, in @Styles.Render("~/Content/css") Welche Datei wird aufgerufen?

Ich habe keine Datei oder einen Ordner namens "css" in meinem Content dossier.

466voto

NunoCarmo Punkte 5449

Es ruft die Dateien auf, die in diesem bestimmten Bundle enthalten sind, das innerhalb der BundleConfig Klasse in der App_Start dossier.

In diesem besonderen Fall ist der Aufruf von @Styles.Render("~/Content/css") ruft "~/Content/site.css" auf.

bundles.Add(new StyleBundle("~/Content/css").Include("~/Content/site.css"));

34voto

linktoemi Punkte 397

Achten Sie auf die Groß- und Kleinschreibung. Wenn Sie eine Datei haben

/Inhalt/bootstrap.css

und Sie leiten in Ihrer Bundle.config um auf

.Include("~/Content/Bootstrap.css")

wird das Css nicht geladen.

17voto

SAm Punkte 2054

Ich komme etwas zu spät zur Party. Aber es scheint, als hätte noch niemand erwähnt
Bündelung & Verkleinerung von StyleBundle , so..

@Styles.Render("~/Content/css") 

Anrufe Application_Start() :

BundleConfig.RegisterBundles(BundleTable.Bundles);            

was wiederum die

public static void RegisterBundles(BundleCollection bundles)
{
    bundles.Add(new StyleBundle("~/Content/css").Include(
              "~/Content/bootstrap.css",
              "~/Content/Site.css"));
}

RegisterBundles() kombiniert effektiv & verkleinert bootstrap.css & Site.css
in eine einzige Datei,

<link href="http://stackoverflow.com/Content/css?v=omEnf6XKhDfHpwdllcEwzSIFQajQQLOQweh_aX9VVWY1" rel="stylesheet">

Aber ..

<system.web>
  <compilation debug="false" targetFramework="4.6.1" />
</system.web>

nur wenn debug wird eingestellt auf false en Web.config .
Ansonsten bootstrap.css & Site.css werden einzeln serviert.
Weder gebündelt noch verkleinert:

<link href="http://stackoverflow.com/Content/bootstrap.css" rel="stylesheet">
<link href="http://stackoverflow.com/Content/Site.css" rel="stylesheet">

0voto

Ram Punkte 11

src="@url.content("~/Folderpath/*.css")" sollte Stile wiedergeben

0voto

Sathish Dadi Punkte 1

Wie in App_start.BundleConfig definiert, ruft es einfach

bundles.Add(new StyleBundle("~/Content/css").Include("~/Content/site.css"));

Auch wenn Sie diesen Abschnitt entfernen, passiert nichts.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X