32

Sei in Visual Studio ... si preme F5 (Run) e sono accolti da questa finestra di dialogo:Vorresti continuare ed eseguire l'ultima build di successo?

C'erano errori di generazione. Vorresti continuare ed eseguire l'ultima build di successo?

Meraviglioso.

sono sicuro che ci sono casi in cui l'esecuzione dell'ultima generazione corretta è utile, però, non ho mai volutamente risposto sì a questa domanda. Oh, certo, ho cliccato Sì un sacco di volte, e in attesa di frustrazione per la prima opportunità di annullare il mio errore, ma niente di più.

Quindi, hai mai trovato utile questa funzione? E se sì, in quali circostanze è diventato utile per te essere in grado di eseguire l'ultima build di successo della tua applicazione?

Con quale frequenza si fa clic accidentalmente su Sì e si scaccia mentre si attende l'avvio dell'app?

+4

Non ho mai voluto fare clic su Sì in questa finestra di dialogo. Una domanda a parte: esiste un'impostazione che salta questa finestra di dialogo con una risposta predefinita di no? –

+0

Se può lanciare l'ultima esecuzione riuscita, deve comunque avere il codice da qualche parte. Perché non può semplicemente permettervi di selezionare "ripristinare il codice" per l'ultima esecuzione riuscita? –

+0

Non ha il codice. Se la compilazione fallisce, è in genere nella fase di compilazione, non nel collegamento, quindi il vecchio binario non è stato ancora sovrascritto ... – forsvarir

risposta

38

In VS2008 vi sono le seguenti opzioni è possibile impostare per modificare il comportamento (non so se ci sono le opzioni simili in altre versioni di Visual Studio):

Projects and Solutions/Build and Run 

    - On Run, when projects are out of date: 

      Always build 
      Never build 
      Prompt to build <== default setting 

    - On Run, when build or deployment errors occur: 

      Launch old version 
      Do not launch 
      Prompt to launch <== default setting 

Impostare le opzioni di cui sopra a "costruire sempre" e "Non lanciare" e ottieni ciò che considero un comportamento più vantaggioso. Anche se a volte, quando provo a lanciare il debugger e c'è un errore di compilazione, mi ci vogliono alcuni secondi per capire perché non sto arrivando alla rottura che pensavo di colpire (potrebbe essere bello avere una sorta di "tostapane" 'tipo di messaggio per buttarmi fuori dal mio torpore).

+3

Stesse impostazioni su VS2010 –

+5

... e lo stesso su VS2012. Strumenti-> Opzioni-> Progetti e soluzioni-> Costruisci ed esegui. –

+5

Esiste un modo per fare la stessa cosa per i test unitari? –

6

Questo può essere utile quando si esegue il debug di un'applicazione Web e una delle pagine non viene compilata, poiché alcuni altri sviluppatori hanno verificato una versione errata oppure non è possibile controllare l'ultimo codice per qualsiasi motivo, ma si sa non colpirai quella pagina. Lo faccio tutte le volte.

0

Interessante. Non ho mai visto questa finestra di dialogo, so che esiste un'opzione per abilitare/disabilitare l'esecuzione della precedente build, quindi forse mostra prima una finestra di dialogo. Puoi controllare se disabilitarlo.

Uno dei motivi per cui questo può essere utile, tuttavia, è se si desidera ricordare a te stesso di che bug si stava lavorando. Non tutte le cose possono essere corrette in edit-and-continue e potrebbe essere necessario un jog di memoria.

0

È utile anche per le applicazioni Web, perché impone l'avvio dei server Cassini. Ne hai bisogno se stai lavorando su un progetto nella soluzione che non verrà compilato, e devi aggiornare i servizi web in un altro progetto.

0

Quando si utilizza VS 2008 Express, è disponibile una casella per non visualizzare più questa finestra di dialogo. Ho appena provato e questo rimuoverà la finestra di dialogo, lasciando solo un messaggio di build fallito nella parte in basso a sinistra dello schermo.

Quanto a quanto spesso lo colpisco, abbastanza spesso. Frustrante come a volte ho cambiato il codice completo mentre testavo le cose e otterrei qualcosa di completamente estraneo al compito in questione. Non sono sicuro quando Microsoft ha pensato che sarebbe stato utile.

5

Questo comportamento può essere definito sotto Strumenti> Opzioni> Progetti e Solutions-> costruire e Esegui-> On Run, quando costruire o errori di distribuzione si verificano

qui è possibile selezionare: - Lancio vecchia versione - Non avviare - Richiesta di avvio

0

Funziona sulla preferenza della selezione della DLL appropriata in fase di esecuzione. I file eseguibili non vengono generati se c'è un errore costruito in modo che il compilatore cerchi l'eseguibile esistente che è ovviamente l'ultimo compilato correttamente.

Problemi correlati