Korzystam z programu Visual Studio 2012 w pierwszych dniach, kiedy chcę zatrzymać aplikację w IDE, aplikacja wciąż działała w IIS Express, mogłem przeglądać i pracować z uruchomioną aplikacją, ale teraz nie mogę. IIS Natychmiastowe zamknięcie aplikacji po naciśnięciu przycisku Stop. Odkąd pamiętam nie wprowadzałem żadnych zmian w ustawieniu. Jak mam to zrobić, tak samo jak w pierwszych dniach.
173
Odpowiedzi:
Niedawno spotkałem się z podobną sytuacją, gdy nagle mój IIS Express przestał działać zaraz po tym, jak przestałem debugować. Stało się to po włączeniu opcji „Włącz edycję i kontynuuj” . Jeśli więc to wyłączysz, zobaczysz, że IIS Express działa nawet po zatrzymaniu debugowania.
Kliknij projekt prawym przyciskiem myszy> kliknij Właściwości> wybierz kartę „Sieć” po lewej stronie> odznacz pole
Enable Edit and Continue
wyboru.źródło
W VS2010 i VS2012 opcja Edytuj i kontynuuj jest domyślnie wyłączona podczas tworzenia nowego projektu aplikacji internetowej. W VS2013 jest domyślnie włączony.
Tę opcję można znaleźć na karcie WWW w oknie właściwości projektu WWW.
Po włączeniu opcji „Włącz edycję i kontynuuj” debuger VS uruchamia aplikację sieci Web w usługach IIS Express. Po zatrzymaniu debugowania usługi IIS Express są również zamykane. W przypadku tego zachowania pasek systemowy IIS Express pojawi się podczas debugowania i zniknie po debugowaniu. To zachowanie jest takie samo, jak w VS2012, gdy włączona jest opcja Włącz edycję i kontynuuj.
Jeśli nie potrzebujesz funkcji „Edytuj i kontynuuj” podczas programowania i chcesz, aby program IIS Express pozostał po sesji debugowania, możesz po prostu wyłączyć opcję Włącz edycję i kontynuuj .
I f chcesz użyć „Edycja i dalej” albo jesteś rozwój Asp.net 5 miejsce (ASP.NET 5 projektów nie masz Edytuj i Kontynuuj wyboru we właściwościach projektu) trzeba użyć „DETECH wszystko” polecenia zatrzymać debugowanie.
Debugger odłączy się od procesu iis bez jego zamykania.
Oczywiście funkcja „Edytuj i kontynuuj” nie będzie działać do czasu ponownego rozpoczęcia debugowania.
źródło
Zamiast naciskać
(X) STOP
przycisk, możesz użyćDetach all
pozycji menu w menu Debug. Główna różnica polega na tym, że przycisk zatrzymania zakończy każdy proces, który jest obecnie debugowany, podczas gdy polecenie Odłącz wszystko odłączy debuger od procesów, ale ich nie zakończy.Normalny proces roboczy IIS również zostałby zakończony, ale ponieważ działał jako usługa, zostanie również automatycznie uruchomiony ponownie, dzięki czemu można go nadal używać bez konieczności ponownego uruchamiania procesu za pomocą
|> Debug
lub|> Start without debugging
.Zrzut ekranu w celach informacyjnych
źródło
Wygląda na to, że od czasu wydania Visual Studio 2015 Update 2 zaakceptowane rozwiązanie już nie działa.
Najłatwiejszym rozwiązaniem, jakie do tej pory znalazłem, jest rozpoczęcie projektu poprzez wybranie opcji „ Rozpocznij bez debugowania ” z menu Debugowanie .
źródło
Jest to prawdopodobnie najlepiej sklasyfikowane jako inne obejście, ale działa dla mnie.
Generalnie po raz pierwszy zaczynam projekt z menu kontekstowego „Wyświetl w przeglądarce” (lub CTRL-Shift-W).
Odtąd wszystko, co wymaga debugowania, zwykle dołączam do nowego istniejącego procesu iisexpress. Podczas gdy poruszanie się myszką przez menu kontekstowe sprawiłoby, że nie byłoby to uruchamiane, jest prawie tak szybkie jak F5 z następującymi naciśnięciami klawiszy:
Ctrl-Alt-P otwiera okno dialogowe dołączania do procesu
wpisanie „iis” spowoduje przejście do procesu iisexpress
Jeśli masz uruchomionych więcej niż jedną usługę iisexpress, ostatnia uruchomiona będzie zazwyczaj wyświetlana na górze listy. Inną opcją jest przesunięcie wyboru i dołączenie do nich wszystkich.
Ma to szereg zalet IMO. Przede wszystkim nie kończy procesu. Po drugie, okno przeglądarki nie jest zamykane po zatrzymaniu debugowania. To mnie załamuje, gdy widzę, jak programista powtarza 7 kroków, aby odtworzyć błąd, kiedy wszystko, co musi zrobić, to nacisnąć F5 w istniejącym oknie przeglądarki, aby po prostu ponownie opublikować po podłączeniu debugera. Na koniec muszę to zrobić już podczas przyłączania się do zakonnicy, aby uzyskać bardziej spójne doświadczenie.
źródło