Und noch, was ist die Magie von ASP.NET MVC Content-Ordner?

8

Ich habe gerade meine Ressourcendateien (javascript, css, images) vom Content Ordner in den benutzerdefinierten Assets Ordner verschoben. Und ich habe ein seltsames Verhalten bemerkt - diese Dateien werden nicht länger vom Browser zwischengespeichert und MvcMiniProfiler wird separat angezeigt Anfrage für jede Ressource in Assets Ordner:

Ich weiß, dass der Ordner Content nicht von der ASP.NET MVC-Konvention benötigt wird, aber warum passiert das? Wird Content irgendwie speziell von irgendjemand behandelt (z. B. ASP.NET, IISExpress, etc.)? Und wie erzwingt Caching für andere Ordner, die statische Ressourcen enthalten?

BEARBEITEN: Oh, es scheint kein merkwürdiges Verhalten von ASP.NET MVC zu sein, sondern nur das Standardverhalten von MvcMiniProfiler. Momentan überprüfe ich das ...

BEARBEITEN: Ja, es gibt kein Problem mit ASP.NET MVC, es ist nur ein Standardkonfiguration von MvcMiniProfiler, um nur diese Pfade zu ignorieren: "/mini-profiler-", "/content/", "/scripts/", "/favicon.ico" . Und diese Standardeinstellungen können einfach erweitert werden:

%Vor%

Manchmal ist es eine gute Idee, die Dokumentation vor der Verwendung von etwas zu lesen;)

    
Anton Moiseev 17.11.2011, 09:22
quelle

2 Antworten

4

Wie Sie in Ihrem Update angeben, scheint dies eine Funktion von MvcMiniProfiler zu sein:

%Vor%

Quelle .

Vermutlich wurden die Bilder nie zwischengespeichert, wenn Sie sie über Cassini darboten, weil Cassini furchtbar ist (zB png-Dateien als application / octet-stream), aber das Problem wurde von MvcMiniProfiler manuell ausgeblendet .

    
David Hedlund 17.11.2011, 09:44
quelle
4

Das ist ein seltsames Verhalten. Fügen Sie den folgenden Code jedoch in Ihre Datei web.config ein, die sich im Stammverzeichnis Ihrer App befindet:

%Vor%

Dieser Code hängt die erforderlichen Antwortheader an, damit das Browser-Caching funktioniert. Sie können die Zeit natürlich optimieren. Weitere Informationen finden Sie unter: Ссылка

    
tugberk 17.11.2011 09:30
quelle