Nozioni fondamentali sui tipi di progetto
Visual Studio include diversi tipi di progetto per linguaggi come Visual C# o Visual Basic. Visual Studio consente anche di creare tipi di progetto personalizzati.
Se si vogliono aggiungere comandi, editor o finestre degli strumenti personalizzati a Visual Studio, è possibile farlo senza creare un nuovo tipo di progetto. Per ulteriori informazioni, vedi gli argomenti seguenti:
Estensione e personalizzazione delle finestre degli strumenti
Analogamente, se si vuole personalizzare il comportamento dei tipi di progetto Visual C# e Visual Basic forniti, è possibile farlo usando i sottotipi di progetto. Per altre informazioni, vedere Sottotipi di progetto.
È necessario creare un nuovo tipo di progetto per i progetti basati su un linguaggio diverso da Visual C# e Visual Basic se si vuole supportare uno o più dei seguenti elementi:
Compilazione
Distribuzione
Più configurazioni
Controllo del codice sorgente
Debug
Elementi del progetto in Esplora soluzioni
Finestre di dialogo Apri progetto o Nuovo progetto
Annidamento del progetto
Per altre informazioni sulle funzionalità dei tipi di progetto, vedere quanto segue:
I tipi di progetto sono oggetti in un VSPackage che implementa il set di interfacce previste da Visual Studio. Se si usa C# per sviluppare un tipo di progetto, le classi di progetto Managed Package Framework implementano automaticamente le interfacce necessarie e consentono di ereditare tale implementazione. Per altre informazioni, vedere Uso di Managed Package Framework per implementare un tipo di progetto (C#).
Per gli sviluppatori C++, le classi nella libreria HierUtil funzionano in modo simile. Per altre informazioni, vedere Not in Build: Using HierUtil7 Project Classes to Implement a Project Type (C++).
I tipi di progetto possono supportare dati diversi dai file di codice sorgente tipici compilati in un assembly con estensione exe o DLL. Ad esempio, i progetti di database di Visual Studio contengono riferimenti ai file di script e query archiviati su disco e aggiungere comandi a Esplora soluzioni per eseguire script e query su un database, ma i progetti non supportano il comportamento di compilazione. Per altre informazioni, vedere Apertura e salvataggio di elementi di progetto.
Un tipo di progetto non deve usare affatto i file. Ad esempio, un tipo di progetto potrebbe archiviare tutti i dati in un database. Visual Studio offre ai tipi di progetto il controllo completo sulla modalità di persistenza dei dati per i progetti e gli elementi del progetto. Per altre informazioni, vedere Project Type Design Decisions.For more information, see Project Type Design Decisions.
I tipi di progetto devono fornire una factory di progetto, ovvero un oggetto che crea un'istanza del tipo di progetto ogni volta che Viene indicato a Visual Studio di aprire o creare un progetto basato su tale tipo di progetto. Per altre informazioni, vedere Creazione di istanze di progetto tramite project factory.
I tipi di progetto devono fornire modelli per progetti ed elementi di progetto. Visual Studio usa i modelli quando gli utenti creano nuovi progetti e aggiungono nuovi elementi ai progetti esistenti. Per altre informazioni, vedere Aggiunta di modelli di progetto e di elementi di progetto.
I tipi di progetto possono supportare più configurazioni, ad esempio Debug e Rilascio. Gli utenti possono modificare le diverse configurazioni di un progetto usando le pagine delle proprietà fornite. Per altre informazioni, vedere Gestione delle opzioni di configurazione.