Condividi tramite


Costruire app per Microsoft.NETFramework.ReferenceAssemblies

Quando si usa una determinata versione di .NET Framework, per impostazione predefinita l'applicazione viene compilata usando gli assembly di riferimento inclusi nel pacchetto di sviluppo di tale versione. Negli scenari in cui non è possibile installare il pacchetto di sviluppo corrispondente nel computer, è possibile eseguire la compilazione in base agli assembly di riferimento distribuiti tramite un pacchetto NuGet.

Aggiornare i file di progetto

Ogni progetto che deve essere compilato utilizzando il pacchetto NuGet delle assembly di riferimento deve includere un riferimento a Microsoft.NETFramework.ReferenceAssemblies.

I progetti che usano un file packages.config devono includere quanto segue in packages.config.

<packages>
  <package id="Microsoft.NETFramework.ReferenceAssemblies" version="1.0.3" developmentDependency="true" />
</packages>

I progetti che usano la <PackageReference> proprietà MSBuild devono includere la proprietà seguente nel file di progetto.

<ItemGroup>
  <PackageReference Include="Microsoft.NETFramework.ReferenceAssemblies" Version="1.0.3" PrivateAssets="All" />
</ItemGroup>

I progetti in stile SDK includono questo riferimento per impostazione predefinita. Per i progetti .NET Framework tipici creati con Visual Studio, è possibile aggiungere il riferimento usando l'interfaccia utente di Gestione pacchetti NuGet in Visual Studio. Il pacchetto contiene assembly di riferimento per molte versioni di .NET Framework. La versione effettivamente usata è determinata dalla TargetFrameworkVersion proprietà o TargetFramework , come già definito nel file di progetto.

Ripristinare il progetto

I progetti che contengono un riferimento al pacchetto devono essere ripristinati prima di poter essere compilati.

Dopo aver aggiunto il pacchetto NuGet Microsoft.NETFramework.ReferenceAssemblies al progetto, è necessario eseguire in modo esplicito l'azione di ripristino in uno dei modi seguenti:

  • Se il progetto è un progetto non in stile SDK e usa il file packages.config per fare riferimento ai pacchetti NuGet:

    1. Installare lo strumento dell'interfaccia della riga di comando di NuGet e assicurarsi che nuget.exe si trova nella PATH variabile di ambiente.
    2. Apri il prompt dei comandi.
    3. Passare alla directory che contiene il file di progetto.
    4. Esegui nuget.exe restore.
  • Se il progetto è un progetto non in stile SDK e usa <PackageReference> le impostazioni nel file di progetto per fare riferimento ai pacchetti NuGet:

    1. Aprire il prompt dei comandi per gli sviluppatori per VS 2022. Il nome di questa app potrebbe essere diverso in base alla versione di Visual Studio installata.
    2. Passare alla directory che contiene il file di progetto.
    3. Esegui msbuild /t:restore.
  • Se il progetto è un progetto in stile SDK, non è necessario eseguire alcuna operazione. L'azione di ripristino NuGet viene eseguita automaticamente quando viene compilato il progetto.

Importante

L'uso di assembly di riferimento consente di compilare progetti destinati a versioni non supportate di .NET Framework dalla riga di comando. Tuttavia, non è comunque possibile caricare questi progetti nelle versioni più recenti di Visual Studio. Per continuare a compilare queste app in Visual Studio, l'unica soluzione alternativa consiste nell'usare una versione precedente di Visual Studio.