W .NET MVC4
projekcie robi, jak @Styles.Render
działa?
Mam na myśli, w @Styles.Render("~/Content/css")
którym pliku się woła?
Nie mam w folderze pliku ani folderu o nazwie „css” Content
.
c#
asp.net-mvc
razor
asp.net-mvc-4
Ricardo Polo Jaramillo
źródło
źródło
Odpowiedzi:
Wywołuje pliki zawarte w tym konkretnym pakiecie, który jest zadeklarowany w
BundleConfig
klasie wApp_Start
folderze.W tym konkretnym przypadku Wywołanie
@Styles.Render("~/Content/css")
to „~ / Content / site.css”.źródło
*.min.*
ponad*.*
plików.Uważaj na rozróżnianie wielkości liter. Jeśli masz plik
i przekierowujesz w pliku Bundle.config na
nie załaduje css.
źródło
Trochę późno na imprezę. Ale wydaje się, że nikt nie wspomniał
pakowanie w wiązki i minifikacji o
StyleBundle
tak ..wzywa
Application_Start()
:który z kolei wzywa
RegisterBundles()
skutecznie łączy i minimalizujebootstrap.css
orazSite.css
w jeden plik,
Ale ..
tylko gdy
debug
jest ustawiony nafalse
inWeb.config
.Inaczej
bootstrap.css
iSite.css
będą podawane indywidualnie.Nie w pakiecie ani nie zminimalizowane:
źródło
src="@url.content("~/Folderpath/*.css")"
powinien renderować styleźródło
Jak zdefiniowano w App_start.BundleConfig, to tylko wywołanie
Nic się nie dzieje, nawet jeśli usuniesz tę sekcję.
źródło
Polo Nie używałbym pakietów w MVC z wielu powodów. To nie działa w twoim przypadku, ponieważ musisz skonfigurować niestandardową klasę BundleConfig w folderze Apps_Start. Nie ma to sensu, gdy możesz po prostu dodać styl w nagłówku HTML:
Możesz także dodać je do Layout.cshtml lub częściowej klasy, która jest wywoływana ze wszystkich twoich widoków i upuszczana na każdej stronie. Jeśli zmienią się twoje style, możesz łatwo zmienić nazwę i ścieżkę bez konieczności ponownej kompilacji.
Dodanie zakodowanych linków do CSS w klasie psuje również cały cel oddzielenia interfejsu użytkownika i projektu od modelu aplikacji. Nie chcesz też zarządzać ścieżkami arkusza stylów zakodowanych na sztywno w języku C #, ponieważ nie możesz już budować „skór” lub oddzielnych modeli stylów dla, powiedzmy, różnych urządzeń, motywów itp.
Korzystając z tego systemu i Razor, możesz teraz wyłączyć Ścieżkę skórki z bazy danych lub ustawień użytkownika i zmienić cały projekt swojej witryny, zmieniając dynamicznie ścieżkę.
Celem CSS 15 lat temu było opracowanie „skórek” arkusza stylów kontrolowanych przez użytkownika i kontrolowanych przez aplikacje dla witryn, aby można było zmienić wygląd interfejsu użytkownika i poczuć się oddzielny od aplikacji oraz zmienić przeznaczenie treści niezależnie od struktury danych. .... na przykład wersja do wydruku, wersja mobilna, wersja audio, nieprzetworzony plik XML itp.
Wracając teraz do tego „staromodnego”, zakodowanego na stałe systemu ścieżek, wykorzystującego klasy C #, sztywne style, takie jak Bootstrap, i łącząc motywy witryn z kodem aplikacji, cofnęliśmy się do tego, jak strony internetowe zostały zbudowane w 1998 roku.
źródło
minification
tym? : s / :(Zrobiłem wszystko, co konieczne, aby dodać pakietowanie do sieci MVC 3 (jestem nowy w istniejącym rozwiązaniu).
Styles.Render
nie działało dla mnie. W końcu odkryłem, że po prostu brakuje mi jelita grubego. Na stronie wzorcowej:<%: Styles.Render("~/Content/Css") %>
Nadal jestem zdezorientowany, dlaczego (na tej samej stronie)<% Html.RenderPartial("LogOnUserControl"); %>
działa bez dwukropka.źródło