Frage

Ich mag einige der Script Funktionen in dem neuen Asp.net MVC-Modell haben:

1- Script kombiniert
2- Lösen von verschiedenen Pfade für externe
Javascript-Dateien 3- Minify und gzip-Kompression

Hier ist was ich gefunden habe, aber ich bin mir nicht sicher ist der beste Weg für MVC-Ansatz. In der Regel, was ist ein guter Ansatz mit Javascript-Code in dem MVC-Modell zu tun?

War es hilfreich?

Lösung

Vielleicht könnten Sie erstellen Sie einfach eine neue ‚Scripts‘ Controller mit verschiedenen Aktionen verschiedene Kombinationen von Druck JS-Dateien dient. Da MVC mit einem ressourcenorientierten Ansatz ausgebildet ist, sind das heißt URLs nun in der Mitte des Programmiermodells, warum nicht einfach URIs für Ihre Javascripts definieren?

Ihre Ansichten, zum Beispiel können Sie Ihre Dateien wie diese verweisen konnte:

<script src="http://your_domain/scripts/all"/>

Dies würde Sie ‚alle‘ Aktion nennen, was in alle Druck Script-Dateien gesendet werden.

Natürlich müßten Sie die Kombination und Komprimierung für jetzt kodieren, oder vielleicht Script intern wiederverwenden, ich weiß nicht, ob es möglich ist.

Das ist nur eine Idee, aber zur Zeit Referenzierung ich einzelne JavaScript-Dateien direkt in meinen Masterseite.

Andere Tipps

Versuchen Sie folgendes: http://www.codeplex.com/MvcScriptManager

  

MvcScriptManager richtet sich an Port bestimmte Schlüsselmerkmale in AjaxControlToolkit der ToolkitScriptManager in den aktuellen ASP.NET MVC Framework. Sie können es als eine Kontrolle in Ihrer ASP.NET MVC-Anwendung verwenden.

     

Eigenschaften

     
      
  1. Script-Kombination (oder Verkettung). Scripts mit MvcScriptManager erklärt wird on the fly in eine einzelne Skriptdatei Anforderung kombiniert werden, wenn die Seite gerendert wird.
  2.   
  3. Script minification (oder Knirschen) im Release-Modus. Verkleinerungsprozess wird nur einmal bei der ersten Anfrage durchgeführt, die das spezifische Skript verweist. Nachfolgende Anforderungen werden den knirschte Skript Inhalt im Cache verwenden (# 5 für Detail sehen). werden Knirschen kann aktiviert für jedes Skript / deaktiviert.
  4.   
  5. Render lokalisierten Ressourcen für Stand-alone-Skriptdateien. Lokalisierte Strings wird an das Skript angehängt werden, wenn angegeben.
  6.   
  7. Unterstützung konfigurierbar HTTP-Komprimierung und Ablauf Einstellung, wenn outputing Skripten.
  8.   
  9. Script-Caching mit Dateiabhängigkeit. Skriptdatei Inhalt zwischengespeichert wird, so dass kombinierte Skriptdatei Rendering wird viel mehr performant sein. Cache-Abhängigkeit zu der physischen Datei verknüpft ist daher jedes Skript Update im Dateisystem wird sofort im Cache berücksichtigt werden.
  10.   
  11. Support-Skripten in Debug / Release-Modus basierend auf der Laufumgebung zu machen.
  12.   
  13. Lösen von verschiedenen Pfaden für Stand-alone-Skriptdateien.
  14.   
  15. Unterstützung mehrerer MvcScriptManagers auf einer einzigen Seite (oder Master-Seite). Unterstützt sowohl Master- und Slave-Rendering-Modus, so dass Skripte mit einem Script deklariert ist, kann auf einem anderen einem für die Darstellung gerollt werden.
  16.   
  17. Unterstützung Webfarmszenario ...
  18.   

Oder wie wäre es die Script einschließlich sich selbst, als alleinige Bewohner eines einsamen, einmal pro Seite <form runat="server">?

Wie folgt aus: -

   <form runat="server">
      <asp:ScriptManager ID="ScriptManager1" runat="server" EnableScriptGlobalization="true">
      </asp:ScriptManager>
    </form>

Funktioniert für mich.

P. S. Sie werden sicherstellen müssen, dass dieser Form-Tag nie in einer anderen Form eingebettet wird. Verschachtelte Formen nicht funktionieren.

Sie haben diese viel das gleiche Problem untersucht: Eine einfache Script für ASP.NET MVC - nach dieser Frage geschrieben wurde als Referenz beantwortet so hinzugefügt

.

In der ersten Instanz ich mit der Brute-Force-Lösung werde also alles in der Master-Seite bleiben (vor allem als eine jetzt jQuery von Microsofts CDN ziehen kann) - dann werden wir Optionen für optimalere Lösungen zu untersuchen.

MVC 4 enthält jetzt Bündelung und Minifizierung Helfer. Sie definieren alle Skripte, die in Ihrem Bündel gehen, und MVC wird zu bündeln, Kompression sorgen, Cachebusting, etc.

http://www.asp.net/mvc/ tutorials / mvc-4 / Bündelung-and-minification

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top