2008-11-08 23 views
14

Ekipa ASP.NET wydany skrypt łącząc funkcję w 3.5 SP1, jak opisano tutaj http://www.asp.net/Learn/3.5-SP1/video-296.aspx. Czy istnieje już podobna cecha dla ram MVC? Jeśli nie, czy jest to możliwe w celu wykorzystania możliwości formularzy w MVC? Widzę, że ta strona używa niestandardowego jquery.package.master, który, jak przypuszczam, sam się przetoczył (może do cyklu kompilacji, jednak nie wszystkie są zminimalizowane, dlatego myślę, że ręcznie dodali skrypty zamiast jakiegoś automatycznego minify & połączyć zadanie). Byłbym zainteresowany wszelkimi pomysłami, jak to osiągnąć w MVC, ale nie chcę zaczynać przewracać żadnej z moich własnych funkcjonalności na wypadek duplikowania pracy w toku.ASP.NET MVC - Script Kombajny

+0

Ktokolwiek to zaznaczone w dół proszę nie milczeć i powiedz społeczności dlaczego :) chciałbym usłyszeć swój problem z to. – redsquare

+0

Obawiam się, że niektórzy są po prostu punkami, niestety. To dobre pytanie. – MrBoJangles

Odpowiedz

7

Oto, co zrobić w przypadku jest to pomocne.

W moim postbuild nazywam command line version z Dean Edwards's Packer. Łączy skrypty i pakuje je dla mnie.

Na razie jednak wszystkie moje rzeczy przechowuję oddzielnie i używam metody Pomocnika w celu uwzględnienia moich skryptów, a jeśli flaga debugowania nie jest obecna, będzie zawierała spakowane wersje, w przeciwnym razie zawiera rozpakowane.

+0

nie jestem pewien, czy je zapakuję, ale jest to dobry pomysł (pakery mogą powodować problemy) i lepiej użyć min + gzip. Jeśli zaczniesz gzip spakowanego pliku, skończy się on bardziej jak suwak na suwaku. W każdym razie teraz używam YUI jako części mojego procesu budowania TeamCity. Byłeś na dobrej drodze. – redsquare

+0

@ redsquare: Dobra uwaga. Być może Jeff jest zainteresowany obfuskacją kodu oraz minimalizacją rozmiaru pliku. –

+0

Masz rację, to jest/był cel. Ale nauczyłem się mądrzejszych technik w ciągu ostatnich 3 lat od zadawania tego pytania. :) –

3

Inną opcją jest w Telerik rdzennych UI Rozszerzenia dla MVC (darmowe biblioteki i open source), zwany ScriptRegistar. Połączy i skompresuje dla ciebie javascript, a jego funkcje są dość bogate w funkcje. Istnieje również klasa, która robi to samo dla css.

Używam tego połączyć +20 pliki javascript w jednym pliku, który jest pobierany przez przeglądarkę.

http://www.telerik.com/products/aspnet-mvc.aspx i można je dostać poprzez Nuget.

+0

tak, to czego używam teraz - to nie było dostępne, gdy pisałem ten post wiele księżyców temu! – redsquare

2

Każdego dnia jest inny sposób robienia rzeczy i zmiany technik.

W tej chwili istnieje bardzo dobry pakiet Nuget wydany w CodePlex.

Combres - Webform & MVC po stronie klienta zasobów Kombajny Biblioteka
http://combres.codeplex.com/

http://weblogs.asp.net/gunnarpeipman/archive/2009/07/04/asp-net-mvc-how-to-combine-scripts-and-other-resources.aspx

+2

Kiedy dodałem Combres do mojego projektu (przez NuGet) okazało się, że to trochę zaszkodziło z moim web.config. Używa log4net (którego już używam) i dodaje niepoprawną dodatkową sekcję log4net, a także rejestrator, którego nie chcę. Coś, na co należy uważać przed wprowadzeniem kodu Combres, zmienia się na twoje vcs. –