2015-05-17 14 views
5

Używamy kodu Visual Studio Code i DNX w następujący sposób.Wyświetl zmiany kodu bez restartowania serwera

Command Line Start serwera WWW

dnx . web 

project.json> Polecenia

"web": "Microsoft.AspNet.Hosting 
     --server Microsoft.AspNet.Server.WebListener 
     --server.urls http://localhost:5001" 

pamiętać, że dodatek powrotu karetki dla czytelności.

Po zmianie *.cshtml i odświeżeniu przeglądarki, zmiany pojawiają się w przeglądarce. To jest dobre.

Po zmianie *.cs i odświeżeniu przeglądarki, zmiany nie pojawiają się w przeglądarce. Spodziewaliśmy się, że to zrobią. Aby zobaczyć zmiany, musimy zatrzymać serwer WWW (z Ctrl + C w linii poleceń), a następnie uruchomić go ponownie pod numerem dnx . web.

To nie koniec świata; powiedział, myślałem, że jedną z funkcji ASP.NET 5 była możliwość odświeżenia bez ponownej kompilacji itp.

Jak możemy zmienić kod *.cs i odświeżyć przeglądarkę, aby zobaczyć zmiany bez konieczności restartowania serwera WWW DNX?

Próbowaliśmy uruchamiać dnx --watch . web z problemem, że jeśli zmienimy plik *.cs, to serwer WWW przestanie działać i musimy go zrestartować.

Odpowiedz

1

Jest to oczekiwane zachowanie. Możesz użyć czegoś takiego jak gulp-aspnet-k, aby zautomatyzować ten proces. Bardziej szczegółowe informacje dostępne tutaj: Building and Running Your ASP.NET vNext Application with Gulp.

Zauważ, że ta integracja łyka niestety only works on Windows now, ale wszystko to jest do watch the dnx process and restart it again.

+0

Pakiet npm została zmieniona na 'haustem-ASPNET-dnx' (jak można by się spodziewać). Ale nie jest to konieczne. W Windows po prostu uruchom tą powłokę: 'for (;;) {Write-Output" Starting ... "; dnx --watch.web} ' – yzorg

5

Kod zmiany w locie działa tylko po uruchomieniu bez debugowania. Zakładam, że właśnie naciskasz F5 (debugowanie) z VS, który faktycznie dołącza debugger. Spróbuj bez i powinno działać.

Krótka historia: aby odświeżyć kod, serwer musi zostać uruchomiony ponownie. Po uruchomieniu z wiersza poleceń serwer zatrzymuje się i nigdy nie uruchamia się ponownie - sam musisz sobie z tym poradzić, tak jak sugerował to @tugberk - ale podczas uruchamiania z VS narzędzie to zajmuje się dla Ciebie.

+0

istnieje dnx-watch do tego. prawda? – Neel

+0

Tak, właśnie opublikowaliśmy to wczoraj. –

1

Istnieje polecenie, którego można użyć do tego, zwanego dnx-watch. Nie istniało, gdy pierwotne pytanie było zadawane, ale zostało dodane w wersji beta 8 we wrześniu 2015 r. Zainstalowano go za pomocą

komend dnu zainstaluj Microsoft.Dnx.Watcher Uruchamiasz go po prostu przekazując mu polecenie przeszedłby do dnx. Tak, wymień

dnx web 

z

dnx-watch web 

Więcej informacji można znaleźć tutaj: http://ardalis.com/get-started-with-dnx-watch

+0

Czy istnieje sposób na szybkie ładowanie (jak w przypadku pakietu sieciowego)? Ponownie uruchamia się proces sieciowy (w przypadku korzystania z sieci web Dnx-Watch), ale nadal trzeba nacisnąć klawisz F5, aby wyświetlić zmiany. –

+0

Nie, żebym wiedzieć o; FYI przesuwa się do korzystania z dotnet-watch, tutaj: https://github.com/aspnet/dotnet-watch – ssmith

+0

Thx, Znalazłem ten projekt [NodeServices-Webpack] (https://github.com/aspnet/NodeServices/tree /master/src/Microsoft.AspNet.SpaServices/Webpack). Próbowałem, ale ponieważ jest w alfie, nie mogłem tego zrobić, więc poczekaj trochę, aż stanie się bardziej stabilny –

Powiązane problemy