Verwenden von CDN in ASP.NET MVC-Bundles

8

Ich habe den Artikel über Bündelung und Vereinheitlichung gelesen, insbesondere über die Verwendung von CDN , aber einige Dinge sind mir unklar.

Das Beispiel:

%Vor%
  1. Gibt es eine Möglichkeit, das {version} -Format von CDN-Referenzen zu verwenden, wie für die "lokalen"?

  2. Was bringt es, die bereits verkleinerte Version des Skripts in die Bundles aufzunehmen, wie jquery-1.7.1.min.js ? Was ist, wenn es nicht existiert? Sollte es nicht suchen, wenn die .min -Datei existiert und / oder sie erzeugt?

serhio 24.04.2014, 15:58
quelle

3 Antworten

2
%Vor%

Was viele Entwickler nicht realisieren, ist, dass es eine Überladung für den Klassenkonstruktor von ScriptBundle und StyleBundle gibt, die zwei String-Parameter benötigt, zum Beispiel für das ScriptBundle wäre es ScriptBundle (String, String) und für das StyleBundle es wäre StyleBundle (string, string). Der erste Parameter ist der virtuelle Pfad und der zweite Parameter ist der cdnPath.

Wir fragen uns vielleicht, ob MVC, wenn es zwei Parameter benötigt, weiß, welches zu verwenden ist? Nun, der cdn-Speicherort wird nur verwendet, wenn die Eigenschaft "BundleTable.EnableOptimizations" auf "true" gesetzt ist.

Wenn Sie die EnableOptimization-Eigenschaft auf "true" festlegen, wird MVC angewiesen, anstelle der regulären Version die verkleinerte Version der Datei zu verwenden.

Wenn diese Eigenschaft auf "true" gesetzt ist und der cdn-Pfad vorhanden ist, verwendet MVC den Pfad cdn anstelle des lokalen virtuellen Pfads.
Es gibt eine weitere Eigenschaft, die Sie auf true setzen müssen, und das sind die bundles.UseCdn.
Dies weist MVC an, den cdn-Ort anstelle der lokalen Version zu verwenden. Wenn die BundleTable.EnableOptimization auf false festgelegt ist, wird die lokale Version automatisch als Fallback verwendet, weil die cdn-Version die verkleinerte Version ist.

Lesen Sie in diesem Blog, was Sie denken:

Ссылка

    
Vijay Maheriya 08.09.2016 09:04
quelle
0
  1. Sie können nicht meines Wissens. Sie können jedoch eine Tabelle mit cdns erstellen und auffüllen, wenn die Bundles geladen sind. Wenn eine neue Version herauskommt, die Sie verwenden möchten, fügen Sie einen Eintrag in der db hinzu / ersetzen Sie ihn.

    %Vor%
  2. Ich stimme dem min Teil zu. Für den Teil, der nicht existiert, scrollen Sie nach unten und lesen Sie über "Verwenden eines CDN". Es gibt ein Beispiel, um zu zeigen, wie man überprüft. Sie müssen im Wesentlichen eine lokale Kopie haben, da eine Sicherung von Ihnen auf eine andere cdn verweisen kann, nehme ich an.

Mark S 24.04.2014 16:12
quelle
0
  

Gibt es eine Möglichkeit, das Format {version} von CDN-Referenzen zu verwenden,   wie für die "lokalen"?

Der Platzhalter {version} dient hauptsächlich dazu, Zeit zu sparen, indem die explizite Zahl eingegeben wird, damit der Build nach Dateien auf dem lokalen Datenträger suchen kann. Da dieselbe Suche nicht auf einem Remote-Server durchgeführt werden kann, müssen Sie explizit eine genaue URL angeben.

  

Was ist der Sinn, in die Bündel die bereits Minimierten aufzunehmen?   Version des Skripts, wie jquery-1.7.1.min.js? Was ist wenn nicht?   existieren?

Der Hauptvorteil dieser Bündelsyntax besteht darin, im endgültigen HTML-Code bedingt zwischen verschiedenen URLs für Skript- und Stil-Tags zu wechseln.

Wenn eine angeforderte Datei nicht existiert, wird sie beim Bündelungsprozess übersprungen.

  

Sollte nicht gesucht werden, wenn die .min-Datei existiert und / oder sie erzeugt   beziehungsweise?   Ja, es gilt die Minimierung vor dem Bündeln, wie Sie sehen können:   

    
Believe2014 25.09.2014 14:21
quelle