2010-02-19 13 views
10

In un progetto di sito Web ASP.NET, sono sempre stato in grado di apportare modifiche al codice C# sottostante e aggiornare semplicemente la pagina nel browser e i miei cambiamenti sarebbero stati lì all'istante.L'applicazione Web di Visual Studio modifica l'origine mentre è in esecuzione come in Tomcat Eclipse Java

Posso fare la stessa cosa quando lavoro con Java ed Eclipse - modificare la mia sorgente Java e aggiornare la pagina e le mie modifiche ci sono.

Non riesco a farlo in ASP.NET MVC ed è un vero downer: devo interrompere il processo in esecuzione e apportare le mie modifiche, quindi riavviare il debug. Questa è un'enorme perdita di tempo.

Sto sbagliando? Qual è l'approccio migliore allo sviluppo di ASP.NET MVC?

risposta

3

Visual Studio blocca il codice sorgente in modalità debug. Quindi le tue opzioni sono:

  1. Pubblica il sito sul tuo IIS locale e usa "attach to proccess".
  2. Utilizzare Esegui senza debug (Ctrl-F5) invece e di nuovo "allegare al processo".
  3. Interrompe l'esecuzione in modalità di debug (con Breakpoint).

Il primo è il mio preferito.

+0

Puoi anche "Pausa" (Ctrl + Alt + Break), apportare le modifiche, fare clic su "Continua" e aggiornare la pagina. – rdev5

-1

Il modo più veloce per eseguire il codice è Host in locale su IIS e quindi tutto ciò che devi fare è creare la soluzione prima di verificare le tue modifiche.

Un'altra alternativa consiste nel trasferire tutto nella cartella App_Code che verrà compilata al volo mentre si apportano le modifiche.

+0

È questo tecnicamente non corretta? – jfar

1

Non è necessario interrompere il processo, è possibile interrompere.

Provare a interrompere il progetto, quindi modificarlo, quindi continuare.

1) CTRL-ALT-PAUSA 2) modificare il codice 3) F5

5

Uso raramente la modalità di debug nel progetto ASP.NET MVC (F5). Eseguo il progetto una volta con CTRL + F5 e ho sempre una finestra del browser aperta. Quindi, se apporto una modifica a una vista (.aspx, .ascx), ho trovato F5 nel browser e le modifiche diventano effettive. Se devo apportare modifiche al codice .NET (logica del controller, modelli, repository, ecc.) Non uso più il browser. Per verificare che il mio cambiamento sia corretto, navigo al test dell'unità corrispondente e premo CTRL + R + T. Il risultato è visto in verde o rosso.

+1

Questo è uno degli enormi vantaggi di MVC. Perché accendere il debugger durante la creazione, i test dovrebbero coprire la maggior parte della tua logica. Lo stesso con webforms MVP. Risparmia un sacco di tempo e inizia a scrivere buoni test. –

1

La mia tecnica è stata quella di avviarlo normalmente, quindi copiare l'URL dal browser e aprire un'altra finestra per il sito Web, quindi uccidere l'originale. Una volta ucciso il browser originale, VS lascia andare il codice sorgente, ma lo conservi ancora in un'altra finestra e puoi navigare normalmente. Ora puoi modificare il tuo codice e quindi aggiornare il browser e funziona come prima.

L'unico motivo per avviarlo normalmente in primo luogo perché VS sembra selezionare un numero di porta casuale contro localhost quando si attiva IIS integrato.Ma anche che raramente cambia

mio URL di solito sembra qualcosa di simile:

http://localhost:49434/something.apsx

Il numbe porto cambia in alcune occasioni ma sembra rimanere lo stesso a patto che tu non vicino Visual Studio. Una volta che uccidi VS, il tuo URL fallirà.

1

Eseguire il progetto MVC con tasto di scelta rapida (CTRL + F5) e ora tutte le modifiche apportate al codice C# sarebbero riflesse nel browser dopo aver rinfrescante (F5)

Problemi correlati