Progettazione progetti .NET
Usare il Progettazione progetti per specificare le impostazioni e le proprietà del progetto per .NET Core e .NET 5+. Per .NET Framework, vedere Che cos'è Progettazione progetti .NET?.
Per accedere a Progettazione progetti, scegliere un nodo del progetto (non il nodo soluzione
Nota
Il computer potrebbe visualizzare nomi o percorsi diversi per alcuni elementi dell'interfaccia utente di Visual Studio in questo articolo. È possibile usare un'edizione diversa di Visual Studio o impostazioni di ambiente diverse. Per altre informazioni, vedere Personalizzare l'IDE.
Applicazione, Impostazioni generali
Le opzioni seguenti consentono di configurare le impostazioni generali per l'applicazione.
tipo di output
Specifica il tipo di applicazione da compilare. I valori sono diversi a seconda del tipo di progetto. Ad esempio, per un progetto di
Per altre informazioni sulla proprietà tipo di output
Per informazioni su come accedere a questa proprietà a livello di codice, vedere OutputType.
framework di destinazione
Specifica la versione di .NET di destinazione dell'applicazione. Questa opzione può avere valori diversi a seconda delle versioni di .NET installate nel computer.
Per un progetto destinato a .NET Core o .NET 5+, le versioni disponibili potrebbero essere visualizzate come segue:
Nota
Per le applicazioni ClickOnce, i pacchetti prerequisiti elencati nella finestra di dialogo Prerequisiti vengono impostati automaticamente la prima volta che si apre la finestra di dialogo. Se successivamente si modifica il framework di destinazione del progetto, è necessario selezionare manualmente i prerequisiti in modo che corrispondano al nuovo framework di destinazione.
Per altre informazioni, vedere panoramica della destinazione di Framework.
del sistema operativo di destinazione
Specifica il sistema operativo di destinazione del progetto. In combinazione con il framework di destinazione, viene generato un TF specifico del sistema operativo .NET 5+.
'oggetto Startup
Definisce il punto di ingresso da chiamare quando l'applicazione viene caricata. In genere questa impostazione viene impostata sul modulo principale dell'applicazione o sulla routine Main
che deve essere eseguita all'avvio dell'applicazione. Poiché le librerie di classi non hanno un punto di ingresso, l'unica opzione per questa proprietà è (Non impostata).
Per impostazione predefinita, in un progetto di app WPF questa opzione è impostata su (Non impostato). L'altra opzione è [nomeprogetto].App. In un progetto WPF è necessario impostare l'URI di avvio per caricare una risorsa dell'interfaccia utente all'avvio dell'applicazione. A tale scopo, aprire il file application.xaml public static void Main()
in una classe nel progetto. Questa classe verrà visualizzata nell'elenco oggetto Startup come NomeProgetto.ClassName. È quindi possibile selezionare la classe come oggetto di avvio.
Per altre informazioni, vedere
nome assembly
Specifica il nome del file di output che conterrà il manifesto dell'assembly. La modifica di questa proprietà comporta anche la modifica della proprietà
È anche possibile apportare questa modifica dalla riga di comando usando /out (opzioni del compilatore C#).
Per accedere a questa proprietà a livello di codice, vedere AssemblyName.
dello spazio dei nomi predefinito
Specifica lo spazio dei nomi di base per i file aggiunti al progetto.
Per altre informazioni sulla creazione di spazi dei nomi nel codice, vedere spazio dei nomi.
Per accedere a questa proprietà a livello di codice, vedere RootNamespace.
Impostazioni dell'applicazione, risorse Win32
icona
Imposta il file .ico da usare come icona del programma. Fare clic Sfoglia per cercare un elemento grafico esistente oppure digitare il nome del file desiderato. Per altre informazioni, vedere
Per accedere a questa proprietà a livello di codice, vedere ApplicationIcon.
Per informazioni sulla creazione di un'icona, vedere Editor di immagini per le icone.
risorse
L'opzione risorse
Se si seleziona file di risorse, configurare un file di risorse per il progetto. Immettere un nome di percorso o usare il pulsante sfoglia
manifesto
Seleziona un'opzione di generazione del manifesto quando l'applicazione viene eseguita in Windows in Controllo account utente. Questa opzione può avere i valori seguenti:
Incorporare il manifesto con le impostazioni predefinite. Supporta il modo tipico in cui Visual Studio opera in Windows, che consiste nell'incorporare informazioni di sicurezza nel file eseguibile dell'applicazione, specificando che
requestedExecutionLevel
essereAsInvoker
. Questa è l'opzione predefinita.Creare un'applicazione senza manifesto. Questo metodo è noto come virtualizzazione. Usare questa opzione per la compatibilità con le applicazioni precedenti.
Usare un manifesto personalizzato. Consente di immettere un percorso o passare a un manifesto personalizzato per il progetto.
Impostazioni utilizzo globali
uso globale implicito
Abilita o disabilita global usings, che consentono di usare i tipi definiti in uno spazio dei nomi senza specificare lo spazio dei nomi completo.
Gestire l'uso globale implicito
Aggiungere ed eliminare manualmente gli usi globali da usare nei progetti.
Compilazione, Impostazioni generali
simboli di compilazione condizionale
Specifica i simboli su cui eseguire la compilazione condizionale. Separare i simboli con un punto e virgola (";"). Per altre informazioni, vedere /define (opzioni del compilatore C#).
eseguire il debug di simboli personalizzati
Specifica i simboli per la compilazione condizionale per le compilazioni di debug. I simboli di debug predefiniti vengono visualizzati in una stringa, separati da punti e virgola.
rilasciare simboli personalizzati
Specifica i simboli per la compilazione condizionale per le build di rilascio. I simboli di versione predefiniti vengono visualizzati in una stringa, separati da punti e virgola.
di destinazione della piattaforma
Specifica il processore di destinazione del file di output. Scegliere x86 per qualsiasi processore compatibile con Intel a 32 bit, scegliere x64 per qualsiasi processore compatibile con Intel a 64 bit, scegliere ARM per i processori ARM o scegliere Qualsiasi CPU per specificare che qualsiasi processore sia accettabile. Qualsiasi CPU è il valore predefinito per i progetti, perché consente l'esecuzione dell'applicazione nell'ampia gamma di hardware.
Per altre informazioni, vedere /platform (opzioni del compilatore C#).
Nullable
Specifica il contesto C# nullable a livello di progetto. Questa opzione dell'interfaccia utente è stata introdotta in Visual Studio 16.5 ed è abilitata solo per i progetti che usano C# 8.0 o versione successiva.
Per altre informazioni, vedere Contesti nullable.
Generare informazioni sull'assembly
Specifica se proprietà del progetto correlate al pacchetto vengono trasformate in attributi di assembly. Per altre informazioni, vedere la proprietà GenerateAssemblyInfo
codice unsafe
Consente la compilazione del codice che usa la parola chiave non sicura
Ottimizzare il codice
Abilitare o disabilitare le ottimizzazioni eseguite dal compilatore per rendere il file di output più piccolo, più veloce ed efficiente. Per altre informazioni, vedere /optimize (opzioni del compilatore C#).
simboli di debug
Specifica il tipo di informazioni di debug generate dal compilatore. Per informazioni su come configurare le prestazioni di debug di un'applicazione, vedere 'opzione del compilatore DebugType. Questa impostazione include le opzioni seguenti:
nessuna
Specifica che non verranno generate informazioni di debug.
completa
Abilita il collegamento di un debugger al programma in esecuzione.
pdbonly
Consente il debug del codice sorgente all'avvio del programma nel debugger, ma visualizzerà l'assembler solo quando il programma in esecuzione è collegato al debugger.
portabile
Produce un oggetto . File PDB, un file di simboli portabile e non specifico della piattaforma che fornisce altri strumenti, in particolare i debugger, informazioni su ciò che si trova nel file eseguibile principale e su come è stato prodotto. Per altre informazioni, vedere PDB portabile.
incorporata
Incorpora le informazioni sui simboli portabili nell'assembly. Nessun oggetto esterno. Viene generato il file PDB.
Per altre informazioni, vedere /debug (opzioni del compilatore C#).
Impostazioni di compilazione, errori e avvisi
Le impostazioni seguenti vengono usate per configurare le opzioni di errore e avviso per il processo di compilazione.
livello di avviso
Specifica il livello da visualizzare per gli avvisi del compilatore. Per altre informazioni, vedere /warn (opzioni del compilatore C#).
Eliminare avvisi specifici
Blocca la capacità del compilatore di generare uno o più avvisi specifici. Separare più numeri di avviso con una virgola o un punto e virgola. Per altre informazioni, vedere /nowarn (opzioni del compilatore C#).
Considerare gli avvisi come errori
Consente di specificare se gli avvisi vengono considerati come errori durante il processo di compilazione. Per altre informazioni, vedere /warnaserror (opzioni del compilatore C#).
Considerare avvisi specifici come errori
Specificare gli avvisi considerati come errori. Separare più numeri di avviso con una virgola o un punto e virgola.
Mancia
Se non si desidera che gli avvisi di analisi del codice vengano considerati come errori, vedere Domande frequenti di analisi del codice.
Impostazioni di compilazione, output
Le impostazioni seguenti vengono usate per configurare le opzioni di output per il processo di compilazione.
percorso di output di base
Specifica il percorso dei file di output per la configurazione del progetto. Immettere il percorso dell'output di compilazione in questa casella oppure scegliere il pulsante sfoglia
Con configurazioni di compilazione semplificate, il sistema di progetto determina se compilare una versione di debug o versione. Il comando
assembly di riferimento
Specifica se generare un assembly di riferimento contenente l'API pubblica del progetto.
file di documentazione
Specifica il nome di un file in cui verranno elaborati i commenti della documentazione. Per altre informazioni, vedere /doc (opzioni del compilatore C#).
Impostazioni di compilazione, eventi
Per informazioni sulle impostazioni degli eventi di compilazione, vedere Specificare gli eventi di compilazione (C#).
Impostazioni di compilazione, pubblicazione
pubblicazione
Consente l'esecuzione della destinazione di pubblicazione di MSBuild. Per altre informazioni, vedere la proprietà isPublishable di MSBuild
Pubblica tagliato
Specifica se il taglio è abilitato durante il processo di pubblicazione. Per altre informazioni, vedere proprietà correlate a trim.
Publish native AOT
Specifica se produrre un'app autonoma e compilata in anticipo nel codice nativo. Per altre informazioni, vedere distribuzione AOT nativa.
Impostazioni di compilazione, denominazione avanzata
Firmare l'assembly
Selezionare questa casella di controllo per firmare l'assembly e creare un file di chiave con nome sicuro. Per altre informazioni sulla firma dell'assembly tramiteProgettazione progetti di
Questa opzione usa lo strumento Al.exe fornito da Windows Software Development Kit (SDK) per firmare l'assembly. Per altre informazioni su Al.exe, vedere Procedura: Firmare un assembly con un nome sicuro.
elenco di file di chiave con nome sicuro
Consente di specificare un file di chiave con nome sicuro nuovo o esistente utilizzato per firmare l'assembly. Selezionare <Sfoglia...> per selezionare un file di chiave esistente.
segno ritardo solo
Selezionare questa casella di controllo per abilitare la firma ritardata. Per altre informazioni, vedere Firma ritardata di un assembly.
Si noti che un progetto con firma ritardata non verrà eseguito e non può essere sottoposto a debug. È tuttavia possibile usare il
Nota
Quando si firma un assembly, è possibile che non si abbia sempre accesso a una chiave privata. Ad esempio, un'organizzazione potrebbe avere una coppia di chiavi attentamente sorvegliata a cui gli sviluppatori non hanno accesso su base giornaliera. La chiave pubblica potrebbe essere disponibile, ma l'accesso alla chiave privata è limitato ad alcuni utenti. In questo caso, è possibile usare ritardato o firma parziale per fornire la chiave pubblica, rinviando l'aggiunta della chiave privata fino alla consegna dell'assembly.
Impostazioni avanzate di compilazione
Le opzioni seguenti consentono di impostare impostazioni di compilazione avanzate.
Collegamenti a /langversion (opzioni del compilatore C#), che fornisce informazioni su come viene scelta una versione del linguaggio predefinita in base al framework di destinazione di un progetto.
Verificare la presenza di overflow aritmetici
Specifica se un'istruzione aritmetica integer non rientra nell'ambito del controllato o parole chiave deselezionate e che restituisce un valore non compreso nell'intervallo del tipo di dati genererà un'eccezione di runtime. Per altre informazioni, vedere /checked (opzioni del compilatore C#).
deterministico
Specifica se produrre un output equivalente di byte per byte dalla stessa origine di input. Per altre informazioni, vedere Opzioni del compilatore C# che controllano la generazione del codice.
segnalazione errori interni del compilatore
Specifica se segnalare gli errori del compilatore a Microsoft. Se impostato su prompt (impostazione predefinita), si riceverà un prompt se si verifica un errore interno del compilatore, offrendo la possibilità di inviare una segnalazione degli errori elettronicamente a Microsoft. Se impostato su inviare, verrà inviata automaticamente una segnalazione errori. Se impostato su coda, le segnalazioni degli errori verranno accodate. Se impostato su nessuna, l'errore verrà segnalato solo nell'output di testo del compilatore. Per altre informazioni, vedere /errorreport (opzioni del compilatore C#).
allineamento file
Specifica le dimensioni delle sezioni nel file di output. I valori validi sono 512, 1024, 2048, 4096e 8192. Questi valori vengono misurati in byte. Ogni sezione verrà allineata su un limite multiplo di questo valore, che influisce sulle dimensioni del file di output. Per altre informazioni, vedere /filealign (opzioni del compilatore C#).
Pacchetto, Impostazioni generali
Le proprietà di questa sezione vengono usate per configurare i pacchetti, in genere corrispondenti alle proprietà in un file nuGet .nuspec. Per altre informazioni, vedere file con estensione nuspec.
Pacchetto, impostazioni di licenza
di licenza pacchetto
Specifica se includere un'espressione di licenza o un file di licenza nel pacchetto. Per altre informazioni, vedere l'elemento licenza
Impostazioni pacchetto, simbolo
Produrre un pacchetto di simboli
Specifica se creare un pacchetto di simboli per il debug. Per altre informazioni, vedere Creazione di pacchetti di simboli (con estensione snupkg).
Analisi del codice, Tutte le impostazioni dell'analizzatore
Esegui in fase di compilazione
Specifica se eseguire l'analisi del codice sorgente durante la compilazione del progetto. Per altre informazioni, vedere Disabilitare l'analisi del codice sorgente per .NET.
Esecuzione su di analisi in tempo reale
Specifica se eseguire l'analisi del codice sorgente in tempo reale durante la compilazione del progetto. Per altre informazioni, vedere Disabilitare l'analisi del codice sorgente per .NET.
Analisi del codice, impostazioni dell'analizzatore .NET
Applicare lo stile del codice al di compilazione
Specifica se vengono segnalate violazioni dello stile di codice .NET durante la compilazione del progetto. Per altre informazioni, vedere Applicare gli stili di codice alla compilazione.
Abilitare gli analizzatori .NET
Abilita o disabilita gli analizzatori della piattaforma del compilatore .NET (Roslyn). Per altre informazioni, vedere Abilitare o installare analizzatori .NET di prima parte.
livello di analisi
Specifica il set di analizzatori da eseguire nel progetto. Per altre informazioni, vedere sezione Aggiornamenti più recenti nell'articolo panoramica dell'analisi del codice.
Debug, Impostazioni generali
Selezionare il collegamento per aprire l'interfaccia utente dei profili di avvio di debug. Questa interfaccia utente consente di aggiungere e configurare profili diversi da usare durante il debug. Ogni nome del profilo viene visualizzato come opzione di avvio nell'elenco Avvia debug.
Per ASP.NET progetti Core, le impostazioni nell'interfaccia utente dei profili di avvio corrispondono alle impostazioni nel file di launchSettings.json del progetto. Per informazioni dettagliate sull'uso di questo file nello sviluppo di ASP.NET, vedere Sviluppo e launchSettings.json.
Risorse, Impostazioni generali
Selezionare il collegamento per aprire il file delle risorse dell'assembly RESX. Per altre informazioni, vedere pagina Impostazioni, Progettazione progetti.