Meine Frage ist ähnlich:
Nur dass ich bei MVCs eigener Bündelung bleiben möchte, wenn ich kann. Ich habe einen Brain Crash, bei dem versucht wird, das richtige Muster für die Angabe von Stilpaketen zu finden, sodass eigenständige CSS- und Image-Sets wie die jQuery-Benutzeroberfläche funktionieren.
Ich habe eine typische MVC-Site-Struktur, mit /Content/css/
der mein Basis-CSS wie z styles.css
. In diesem /jquery-ui
CSS- Ordner befinden sich auch Unterordner, z. B. die CSS-Datei sowie einen /images
Ordner. Bildpfade im jQuery UI CSS sind relativ zu diesem Ordner und ich möchte mich nicht mit ihnen herumschlagen.
So wie ich es verstehe, muss ich bei der Angabe von a StyleBundle
einen virtuellen Pfad angeben, der nicht auch mit einem realen Inhaltspfad übereinstimmt, da IIS (vorausgesetzt, ich ignoriere Routen zu Inhalten) dann versuchen würde, diesen Pfad als physische Datei aufzulösen. Also spezifiziere ich:
bundles.Add(new StyleBundle("~/Content/styles/jquery-ui")
.Include("~/Content/css/jquery-ui/*.css"));
gerendert mit:
@Styles.Render("~/Content/styles/jquery-ui")
Ich kann sehen, dass die Anfrage an folgende Adresse geht:
http://localhost/MySite/Content/styles/jquery-ui?v=nL_6HPFtzoqrts9nwrtjq0VQFYnhMjY5EopXsK8cxmg1
Dies gibt die korrekte, minimierte CSS-Antwort zurück. Dann sendet der Browser eine Anfrage für ein relativ verknüpftes Bild wie folgt:
http://localhost/MySite/Content/styles/images/ui-bg_highlight-soft_100_eeeeee_1x100.png
Welches ist ein 404
.
Ich verstehe, dass der letzte Teil meiner URL jquery-ui
eine URL ohne Erweiterung ist, ein Handler für mein Bundle, sodass ich sehen kann, warum die relative Anforderung für das Bild einfach ist /styles/images/
.
Meine Frage ist also, wie ich mit dieser Situation richtig umgehen kann.