ASP.NET distribuzione Web con Visual Studio: Proprietà progetto

di Tom Dykstra

Scaricare il progetto iniziale

Questa serie di esercitazioni illustra come distribuire (pubblicare) un'applicazione Web ASP.NET in Servizio app di Azure App Web o in un provider di hosting di terze parti usando Visual Studio 2012 o Visual Studio 2010. Per informazioni sulla serie, vedere la prima esercitazione nella serie.

Panoramica

Alcune opzioni di distribuzione sono configurate nelle proprietà del progetto archiviate nel file di progetto (file con estensione csproj o vbproj ). Nella maggior parte dei casi, i valori predefiniti di queste impostazioni sono quelli desiderati, ma è possibile usare l'interfaccia utente proprietà progetto incorporata in Visual Studio per usare queste impostazioni se è necessario modificarle. In questa esercitazione vengono esaminate le impostazioni di distribuzione in Proprietà progetto. Si crea anche un file segnaposto che causa la distribuzione di una cartella vuota.

Configurare le impostazioni di distribuzione nella finestra delle proprietà del progetto

La maggior parte delle impostazioni che influiscono su ciò che accade durante la distribuzione sono incluse nel profilo di pubblicazione, come verrà visualizzato nelle esercitazioni seguenti. Alcune impostazioni da tenere presente si trovano nella scheda Package/Publish della finestra Proprietà progetto . Queste impostazioni vengono specificate per ogni configurazione di compilazione, ovvero è possibile avere impostazioni diverse per una compilazione di versione rispetto a quella di una compilazione di debug.

In Esplora soluzioni fare clic con il pulsante destro del mouse sul progetto ContosoUniversity, selezionare Proprietà e quindi selezionare la scheda Pacchetto/Pubblicazione Web.

Scheda Pubblicazione/creazione pacchetto Web

Quando viene visualizzata la finestra, per impostazione predefinita viene visualizzata la visualizzazione delle impostazioni per le quali la configurazione di compilazione è attualmente attiva per la soluzione. Se la casella Configurazione non indica Active (Release), selezionare Release (Release ) per visualizzare le impostazioni per la configurazione della compilazione versione. Si distribuiranno build di versione in ambienti di test e di produzione.

Selezione della configurazione della compilazione versione

Con Active (Release) o Release selezionato, vengono visualizzati i valori effettivi quando si distribuisce usando la configurazione di compilazione versione:

  • Nella casella Elementi da distribuire è selezionatasolo i file necessari per eseguire l'applicazione . Altre opzioni sono Tutti i file in questo progetto o Tutti i file in questa cartella del progetto. Lasciando invariata la selezione predefinita, si evita di distribuire i file di codice sorgente, ad esempio. Questa impostazione è il motivo per cui le cartelle che contengono i file binari SQL Server Compact devono essere inclusi nel progetto. Per altre informazioni su questa impostazione, vedere Perché non tutti i file nella cartella del progetto vengono distribuiti? inASP.NET domande frequenti sulla distribuzione del progetto applicazione Web.
  • È selezionata l'opzione Escludi i simboli di debug generati . Non si esegue il debug quando si usa questa configurazione di compilazione.
  • È selezionata l'opzione Includi tutti i database configurati nella scheda Package/Publish SQL . Specifica se Visual Studio distribuirà i database e i file. Anche se l'etichetta della casella di controllo indica solo la scheda Package/Publish SQL , deselezionare questa casella di controllo disabilita anche la distribuzione del database configurata nel profilo di pubblicazione. Questa operazione verrà eseguita in un secondo momento, quindi la casella di controllo deve rimanere selezionata. La scheda Package/Publish SQL viene usata per un metodo di pubblicazione del database legacy che non verrà usato in queste esercitazioni.
  • La sezione Impostazioni pacchetto distribuzione Web non si applica perché si usa un clic per pubblicare in queste esercitazioni.

Modificare la casella a discesa Configurazione in Debug per visualizzare le impostazioni predefinite per le compilazioni di debug. I valori sono uguali, ad eccezione dei simboli di debug generati dall'esclusione , in modo che sia possibile eseguire il debug quando si distribuisce una compilazione debug.

Assicurarsi che la cartella Elmah venga distribuita

Come illustrato nell'esercitazione precedente, il pacchetto NuGet Elmah offre funzionalità per la registrazione degli errori e la creazione di report. Nell'applicazione Contoso University Elmah è stata configurata per archiviare i dettagli degli errori in una cartella denominata Elmah:

Cartella Elmah

L'esclusione di file o cartelle specifiche dalla distribuzione è un requisito comune; un altro esempio è una cartella in cui gli utenti possono caricare file. Non si desidera che i file di log o i file caricati creati nell'ambiente di sviluppo vengano distribuiti nell'ambiente di produzione. Se si distribuisce un aggiornamento all'ambiente di produzione, non si vuole che il processo di distribuzione elimini i file esistenti nell'ambiente di produzione. A seconda del modo in cui si imposta un'opzione di distribuzione, se un file esiste nel sito di destinazione ma non il sito di origine quando si distribuisce, Distribuzione Web lo elimina dalla destinazione.

Come illustrato in precedenza in questa esercitazione, l'opzione Elementi da distribuire nella scheda Web Package/Publish è impostata su Solo file necessari per eseguire questa applicazione. Di conseguenza, i file di log creati da Elmah nello sviluppo non verranno distribuiti, ovvero ciò che si desidera eseguire. (Per essere distribuiti, devono essere inclusi nel progetto e la relativa proprietà Build Action deve essere impostata su Contenuto. Per altre informazioni, vedere Perché non tutti i file nella cartella del progetto vengono distribuiti? inASP.NET domande frequenti sulla distribuzione del progetto applicazione Web. Tuttavia, Distribuzione Web non creerà una cartella nel sito di destinazione, a meno che non sia presente almeno un file da copiare. Pertanto, si aggiungerà un file.txt alla cartella per fungere da segnaposto in modo che la cartella venga copiata.

In Esplora soluzioni fare clic con il pulsante destro del mouse sulla cartella Elmah, selezionare Aggiungi nuovo elemento e creare un file di testo denominato Placeholder.txt. Inserire il testo seguente in esso: "Si tratta di un file segnaposto per assicurarsi che la cartella venga distribuita." e salvare il file. Tutto ciò che è necessario fare per assicurarsi che Visual Studio distribuisca questo file e la cartella in cui si trovi, perché la proprietà Build Action di .txt file è impostata su Content per impostazione predefinita.

Riepilogo

Sono state completate tutte le attività di configurazione della distribuzione. Nell'esercitazione successiva verrà distribuito il sito di Contoso University nell'ambiente di test e testarlo.