2013-06-07 16 views
6

Zacząłem od prostej witryny MVC przy użyciu NancyFx z widokami maszynki Razor (.cshtml) i Nancy.Hosting.Aspnet, używając IIS Express. Teraz dostosowałem projekt do usługi samo-hostowania przy użyciu Nancy.Hosting.Self (i TopShelf).Kopiowanie widoków maszynki do samodzielnego prowadzenia NancyFx?

Jednak przedstawienie poglądów, wydaje się, że trzeba zmienić ich właściwości z None & Do not copy do Content & Copy if newer, więc są one kopiowane do .\bin\Debug\.

Jedną z konsekwencji jest to, że zmiany w widokach nie będą pokazywane/aktualizowane aż do ponownego uruchomienia. Nawet podczas pracy w debug-mode, where caching is disabled by default. Wiem, że to tylko drobna irytacja, ale nadal irytuje i dobrze jest móc od razu wypróbować (cs) zmiany HTML. Zastanawiam się, czy istnieje sposób, aby to naprawić, np. aby zapobiec konieczności ustawiania plików na Copy if newer?

Odpowiedz

6

Możesz podać custom root path który wygląda bezpośrednio w folderze widoki w projekcie.

+0

Nie sądzę, że to jest bardzo "ładny", aby mieć ścieżkę root, aby wskazać na rodzica katalog (przynajmniej w trybie debugowania). Ale może przerwać ponowne uruchamianie po edycji. (Lub edytowanie skopiowanych plików w '/ bin/Debug 'i przeniesienie zmian z powrotem do źródła.) –

+0

Zgadzam się, że to nie jest ładne. zrobiłem rzeczy brzydsze, ale bardziej pomocne dla klonów, zapisując lokalizację mojej ścieżki głównej do pliku ze zdarzenia budowania (używając makra dla bieżącego katalogu roboczego), a następnie czytając w tym pliku w '#if DEBUG' komunikat. Brzydki, ale działa, gdy kod nie znajduje się w określonym folderze. – jrsconfitto

+0

Oto podstawowe informacje o mojej ścieżce głównej (https://gist.github.com/jugglingnutcase/5782096). – jrsconfitto

3

Musisz ustawić następujące wartości:

#if DEBUG 
    StaticConfiguration.Caching.EnableRuntimeViewDiscovery = true 
    EnableRuntimeViewUpdates = true 
#endif 
+0

Tak, ale mówię o trybie debugowania (będę edytować pytanie), a [w buforowaniu trybu debugowania jest domyślnie wyłączone] (http://stackoverflow.com/a/9534377/422877) . Więc myślę, że problem jest spowodowany przez to kopiowanie. Czy istnieje inne ustawienie, w którym ustawienie kopiowania nie jest konieczne? –

+0

zaktualizowana odpowiedź! – Jon

+0

Dzięki za wysiłek. Ale w trybie debugowania buforowanie jest już domyślnie włączone ** dis **. To mi nie pomaga. –

Powiązane problemy