Organizzare il progetto per il supporto sia di .NET Framework che di .NET
È possibile creare una soluzione che viene compilata con .NET Framework e .NET affiancati. Questo articolo illustra diverse opzioni per l'organizzazione del progetto che consentono di raggiungere questo obiettivo. Ecco alcuni scenari tipici da considerare quando si decide come configurare il layout del progetto con .NET. L'elenco potrebbe non essere esaustivo.
Combinare progetti esistenti e progetti .NET in un singolo progetto
Vantaggi:
- Semplifica il processo di compilazione mediante la compilazione di un singolo progetto piuttosto che di progetti multipli, ciascuno destinato a una versione o a una piattaforma diversa di .NET Framework.
- Semplifica la gestione di file di origine per progetti con più destinazioni perché è necessario gestire un unico file di progetto. Quando si aggiungono o rimuovono i file di origine, le alternative richiedono una sincronizzazione manuale di questi file con altri progetti.
- Generare facilmente un pacchetto NuGet per l'utilizzo.
- Consente di scrivere codice per una versione specifica di .NET Framework usando le direttive del compilatore.
Svantaggio:
- Gli sviluppatori devono usare Visual Studio 2019 o una versione successiva per aprire i progetti esistenti. Per supportare le versioni precedenti di Visual Studio, è opportuno mantenere i file di progetto in cartelle diverse.
Mantenere separati tutti i progetti
Vantaggi:
- Supporta lo sviluppo di progetti esistenti per sviluppatori e collaboratori che potrebbero non avere Visual Studio 2019 o versione successiva.
- Riduce la possibilità di introdurre nuovi bug nei progetti esistenti in quanto non è necessaria alcuna varianza del codice nei progetti.
Si consideri questo repository GitHub di esempio. La figura seguente mostra il layout di questo repository:
Le sezioni seguenti descrivono diversi modi per aggiungere il supporto per .NET in base al repository di esempio.
Sostituire i progetti esistenti con un progetto .NET con più destinazioni
Riorganizzare il repository in modo che venga rimosso qualsiasi file *.csproj esistente e venga creato un singolo file *.csproj destinato a più framework. Questa è un'ottima opzione perché consente di compilare un singolo progetto per diversi framework. Include anche la possibilità di gestire diverse opzioni di compilazione e dipendenze a seconda del framework di destinazione.
Per esaminare codice di esempio, vedere GitHub.
Modifiche da notare:
- Sostituzione di packages.config e *.csproj con un nuovo *.csproj .NET. I pacchetti NuGet vengono specificati con
<PackageReference> ItemGroup
.
Mantenere i progetti esistenti e creare un progetto .NET
Se sono presenti progetti destinati a framework precedenti, è consigliabile lasciare invariati i progetti e usare un progetto .NET destinato ai framework futuri.
Per esaminare codice di esempio, vedere GitHub.
I progetti esistenti e .NET vengono mantenuti in cartelle separate. La suddivisione dei progetti in cartelle separate evita di dover disporre di Visual Studio 2019 o versioni successive. È possibile creare una soluzione separata che consente di aprire solo i progetti precedenti.
Vedi anche
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per