2011-07-07 15 views
12

Wiem, że można to zrobić z mvc2, ale czy jest jakiś sposób na wizualne studio (2010)/resharper (6), aby sprawdzić błędy na stronach aspx podczas kompilacji i zatrzymać kompilację? Resharper może dokładnie wykryć błędy, więc wydaje się, że powinien istnieć sposób zintegrowania sprawdzania wszystkich stron aspx w procesie kompilacji.ASP.net Web Forms, otrzymujesz błędy aspx/view podczas kompilacji?

Jakieś wskazówki?

Odpowiedz

15

Tak, można. Poniższe kroki spowodują, że pliki .aspx zostaną skompilowane jako część zwykłego builk wywoływanego przez IDE, nie jest wymagana żadna wtyczka Resharper.

  • zwolnić web app (prawy przycisk myszy na projekcie i wybierz „Zwolnij projektu”)
  • Otwórz plik .csproj w edytorze tekstowym (prawy przycisk myszy na projekcie i wybierz „Edytuj myProjectName.csproj”)
  • na dole pliku znajdź komentarz, który mówi „Aby zmodyfikować proces budowania ...” i wstawić następujące po tym komentarzu:

<Target Name="AfterBuild"><AspNetCompiler VirtualPath="temp" PhysicalPath="$(ProjectDir)" /></Target>

Źródło - Compile Aspx pages at compile time using the AspNetCompiler build task

+0

wyróżnionego dziwny problem uzależnienia, więc nie mogę potwierdzić, czy jego działa jeszcze. Wygląda obiecująco, choć będzie pisać aktualizację stanu w kawałku – jdc0589

+0

AfterBuild \t

+0

Cześć Justin i @DanaBenson tego kroku z pewnością podkreślę błędy, ale nadal jest napisane "Odbuduj wszystko, co się powiodło", może to być krok po kompilacji ... więc zakładam, że nie ma nic do zrobienia na kompilacji, prawda? –

1

Prawdopodobnie nie chcesz to zrobić w czasie kompilacji ponieważ kompilacja poglądów jest powolna ...

Co naprawdę chcesz to zrobić, to mieć NAnt (lub coś innego) zadania, które będą XML umieszcza ten cel w twoim internetowym pliku .csproj przed skompilowaniem kodu źródłowego na serwerze CI.

W ten sposób twoi programiści nie muszą marnować czasu na AspNetCompiler za każdym razem, gdy wykonują CTRL + SHIFT + B lokalnie w Visual Studio, ale nadal możesz ostrzegać ludzi o widokach z błędami składni na CI serwer przez niepowodzenie kompilacji CI.

Aktualizacja: Oto metoda, która będzie działać widoku budować poza Visual Studio, ale nadal na lokalnym komputerze :)

http://www.luisrocha.net/2011/10/avoiding-mvcbuildviews-build-time.html

+0

Podczas gdy masz rację (zwłaszcza w przypadku większych projektów) spowalnia to kompilację, dobrze byłoby móc w jakiś sposób wstawić to, aby programiści pchali większe zestawy zmian DO serwera CI może sprawdzić przed wysłaniem, aby zapewnić to buduje. Nie za każdym razem, tylko w niektórych przypadkach - dlatego domyślnie jest wyłączone. – Mattygabe

+0

1) Użyj systemu CI, który pozwala na osobiste kompilacje (np. TeamCity) 2) Miej plik wsadowy/cmd/powershell, który wyszukuje MvcBuildViews = true i uruchamia lokalne testy integracyjne, które mogą zostać użyte przez twoich programistów do przetestowania widoków przed ich odprawą 3) pozwól środowisku CI go to złapać, ponieważ nie stanie się tak często. –

+0

Nie jesteś pewien, czy MvcBuildViews jest poprawną opcją dla WebForms, czyż nie? Jestem tego świadomy i wykorzystuję to w moich projektach, które są w ramach MVC, ale ten, który miałem na myśli, nie jest. – Mattygabe

Powiązane problemy