Ich habe eine Masterseite, die in/Views/Shared ist. Die Masterseite verweist auf ein Stylesheet im Ordner /Content
.ASP.NET MVC - Referenzieren von Stylesheets in der Masterseite
Alles funktioniert gut, wenn ich das Stylesheet unter Verwendung "../../Content/style.css"
referenziere. Meine Webanwendung befindet sich jedoch nicht in der Produktionsumgebung im Stammordner, daher funktioniert der relative Pfad nicht.
Ich habe versucht "<% = ResolveUrl (" ~/content/style.css ")%>" das funktioniert im Produktionsszenario, aber dann beschwert sich der Designer in Visual Studio über meine Klassen falsch (und ich kann die Seite nicht mit CSS in der Entwurfsregisterkarte anzeigen).
Gibt es eine Lösung, die in beiden Situationen funktioniert? Ich habe dies in WebForms erreicht, indem ich serverseitigen Code geschrieben habe, der das Link-Tag zurückgesetzt hat. Ich könnte das hier tun, aber ich möchte es vermeiden.
* "Meine Webanwendung befindet sich nicht im Stammordner" * ... Ein relativer Pfad verweist nicht auf den Stammordner. Daher bin ich mir nicht sicher, warum dies wichtig wäre. Sind Sie sicher, dass sich Ihr Inhaltsordner am gleichen ** relativen ** Speicherort auf dem Produktionsserver befindet? –
Der relative Pfad ist in Produktion und Entwicklung gleich. Der relative Pfad ist korrekt, wenn er relativ zur Masterseite ist. Der Pfad ist jedoch nicht relativ zu der Seite, die die Masterseite verwendet. Dies ist der Pfad, den der Browser des Benutzers verwendet. –