Share via


Cenni preliminari sul multitargeting di Visual Studio

La funzionalità di multitargeting di Visual Studio consente di indicare la versione o il profilo specifico di .NET Framework richiesto per l'applicazione. Il vantaggio principale del multitargeting è la possibilità di utilizzare la versione corrente di Visual Studio per creare e sviluppare progetti destinati a una versione precedente di .NET Framework. Ad esempio, è possibile continuare a sviluppare progetti creati in Visual Studio 2005 e Visual Studio 2008 senza aggiungere nuove dipendenze .NET Framework. Grazie alla funzionalità di multitargeting, le applicazioni utilizzano unicamente le funzionalità disponibili nella versione di .NET Framework specificata. Inoltre, la funzionalità di multitargeting consente di continuare a distribuire applicazioni più datate senza dover aggiungere una nuova versione di .NET Framework nel pacchetto di distribuzione.

Nota

Il multitargeting in Visual Studio non garantisce che l'applicazione funzionerà in più versioni di .NET Framework. È possibile utilizzare il multitargeting per selezionare una versione di destinazione di .NET Framework per l'applicazione. È comunque necessario sottoporre a test l'applicazione per assicurarsi che venga eseguita nella versione selezionata. Le destinazioni multiple in Visual Studio riguardano unicamente .NET Framework 2.0 e versioni successive.

Versioni e profili di .NET Framework

Visual Studio 2010 include solo .NET Framework 4. Per utilizzare versioni precedenti di .NET Framework, è necessario disporre di .NET Framework 3.5 Service Pack 1 (SP1). .NET Framework 3.5 SP1 include .NET Framework 2.0, .NET Framework 3.0 e .NET Framework 3.5 SP1. Per scaricare e installare .NET Framework 3.5 SP1, vedereMicrosoft .NET Framework 3.5 Service Pack 1 nel sito Web dell'Area download Microsoft.

Un profilo di .NET Framework è un sottoinsieme di .NET Framework che fornisce un set limitato di librerie e funzionalità. Un esempio di profilo di Framework è un profilo client che può essere utilizzato per creare applicazioni client. Per ulteriori informazioni sul profilo client, vedere Profilo client .NET Framework.

È possibile specificare la versione di destinazione di .NET Framework o il relativo profilo selezionandolo nella finestra di dialogo Nuovo progetto quando si crea un progetto. L'elenco dei modelli di progetto disponibili viene filtrato in base alla selezione.

Nota

Le destinazioni multiple attraverso la finestra di dialogo Nuovo progetto non sono disponibili nelle edizioni Express di Visual Studio.

Modifica della versione di destinazione di .NET Framework

Per un progetto esistente, è possibile modificare la versione di destinazione di .NET Framework o il relativo profilo modificando le proprietà del progetto. Per ulteriori informazioni, vedere Pagina Applicazione, Progettazione progetti (C#) e Finestra di dialogo Impostazioni del compilatore avanzate (Visual Basic).

Quando si modifica la versione di destinazione di .NET Framework, in Visual Studio non sempre vengono modificate automaticamente le versioni degli assembly a cui si fa riferimento. È inoltre possibile che siano richieste alcune modifiche manuali. Per ulteriori informazioni, vedere Risoluzione dei problemi relativi agli errori di impostazione di .NET Framework come destinazione.

Funzionalità di multitargeting

Il multitargeting di Visual Studio include le seguenti funzionalità:

  • Quando si apre in Visual Studio un progetto destinato a una versione precedente di .NET Framework, è possibile aggiornarlo automaticamente o mantenere la versione precedente come destinazione.

  • Quando si crea un nuovo progetto, è possibile specificare la versione di destinazione di .NET Framework desiderata.

  • È possibile modificare la versione di .NET Framework alla quale è destinato un progetto esistente.

  • È possibile selezionare versioni diverse di .NET Framework come destinazioni di progetti diversi della stessa soluzione.

  • Quando si modifica la versione di .NET Framework alla quale viene destinato un progetto, Visual Studio effettua le modifiche necessarie ai riferimenti e ai file di configurazione.

Inoltre, quando si utilizza un progetto destinato a una versione precedente di .NET Framework, viene modificato in modo dinamico l'ambiente di sviluppo come segue:

  • Filtra elementi nelle finestre di dialogo Nuovo progetto, Aggiungi nuovo elemento, Aggiungi nuovo riferimento e Aggiungi riferimento al servizio per omettere scelte che sono disponibili solo in versioni successive.

  • Filtra controlli personalizzati nella Casella degli strumenti per rimuovere quelli disponibili solo in versioni successive e mostrare la versione più recente quando più controlli sono disponibili per la versione di destinazione.

  • Viene filtrato IntelliSense per omettere le funzionalità relative al linguaggio che sono disponibili solo nelle versioni successive.

  • Filtra proprietà nella finestra Proprietà per omettere quelle disponibili solo in versioni successive.

  • Filtra opzioni di menu per omettere opzioni disponibili solo in versioni successive.

  • Viene eseguita la compilazione con la versione e con le opzioni del compilatore appropriate.

Sviluppo di applicazioni compatibili con più versioni di .NET Framework

Per sviluppare un'applicazione compatibile con più versioni di .NET Framework, si consiglia di sviluppare l'applicazione rispetto alla versione precedente di .NET Framework, quindi di procedere alla compilazione in base alla versione successiva di .NET Framework. Ad esempio, è possibile sviluppare l'applicazione rispetto a .NET Framework 3.5 e compilarla in base a .NET Framework 4.

Risoluzione dei riferimenti ad assembly di sistema e utente

La finestra di dialogo Aggiungi riferimento disabilita gli assembly di sistema non pertinenti alla versione .NET Framework utilizzata. (Gli assembly di sistema sono file con estensione DLL che fanno parte di una versione di .NET Framework). Ciò permette di evitare di aggiungere riferimenti ad assembly non nella versione di destinazione. Se si modifica il file di progetto per includere riferimenti che appartengono a una versione di .NET Framework più recente rispetto a quella a cui è attualmente destinato il progetto, il riferimento non verrà risolto. Non è inoltre possibile aggiungere o utilizzare controlli che dipendono da questo riferimento. È possibile risolvere questo riferimento cambiando la destinazione .NET Framework del progetto a una che include questo riferimento. A tale scopo, accedere alla pagina delle proprietà del progetto. Per ulteriori informazioni, vedere Gestione delle proprietà del progetto con Progettazione progetti.

Attivazione di LINQ

Quando si aggiorna un progetto a .NET Framework 3.5 o versioni successive, vengono aggiunti automaticamente un riferimento a System.Core e un'importazione a livello di progetto per System.Linq (solo in Visual Basic). Per utilizzare le funzionalità LINQ, attivare anche Option Infer (solo in Visual Basic). Passando a .NET Framework 3.0 o 2.0, il riferimento e l'importazione vengono rimossi automaticamente. Per ulteriori informazioni, vedere Procedura: creare un progetto LINQ.

Vedere anche

Concetti

Selezione di .NET Framework come destinazione dei progetti Web

Altre risorse

MSBuild Concepts