it-swarm.dev

Mise à niveau Microsoft.AspNetCore.App 2.1.1 "Bloqué par projet"

J'essaie de mettre à niveau un projet .net core 2.1 vers la dernière version de packages Nuget tels que Microsoft.Extensions.DependencyInjection.Abstractions 2.1.1.

Cependant, ceci est bloqué par la référence de package Microsoft.NETCore.App. Lorsque je tente de mettre à niveau le package "méta" Microsoft.NETCore.App, je vois "Bloqué par projet" similaire à cette question . Ce problème a été résolu en passant à la version la plus récente du SDK. Cependant, ce n'est pas une option ici ... car il n'y a pas encore de version plus récente du SDK (??).

J'ai également vu cette réponse mettre à niveau des packages spécifiques en modifiant le fichier .csproj manuellement avec une référence de package de mise à jour, mais je doute que ce soit la méthode envisagée.

Comment devrait je m'occupe de cela? Pour le moment, je viens d'inclure manuellement les références de paquets que j'utilise réellement et de supprimer le méta-paquet, mais je ne peux pas imaginer que ce soit la manière prévue de procéder.

46
Elva

Facile. Je cherchais une solution pour cela plus tôt et tout ce que je devais faire était d’ajouter cela aux projets concernés.

  <PropertyGroup>
    <RuntimeFrameworkVersion>2.1.1</RuntimeFrameworkVersion>
  </PropertyGroup>
32
Nicholas

Dans mon cas, cela est dû à l'absence de l'attribut Version sur Microsoft.AspNetCore.App.

Pour une raison quelconque, lorsque le projet WebApi a été créé, le package a été référencé comme suit:

<PackageReference Include="Microsoft.AspNetCore.App" />

L'ajout de l'attribut manquant a résolu tous les problèmes liés aux mises à jour et aux générations sur le serveur de génération.

<PackageReference Include="Microsoft.AspNetCore.App" Version="2.1.1" />
28
Patrick

Je n'avais que Microsoft.NETCore.App 2.1.1 installé et je ne pouvais pas mettre à jour Microsoft.NETCore.App 2.1.2 dans la fenêtre Manage NuGet Packages... car il affichait "Bloqué par projet":

enter image description here

Dans l'image ci-dessus, cela montre que je suis déjà sur la dernière version parce que j'ai fait ce qui suit ...

1 - téléchargez la dernière version (v2.1.302 à ce jour) de . NET Core SDK ici:

https://www.Microsoft.com/net/download

2 - installez-le et exécutez la commande suivante dans Visual Studio Package Manager Console ou dans Windows PowerShell. Il devrait montrer ce qui suit:

PM> dotnet --info
.NET Core SDK (reflecting any global.json):
 Version:   2.1.302
 Commit:    9048955601

Runtime Environment:
 OS Name:     Windows
 OS Version:  10.0.17134
 OS Platform: Windows
 RID:         win10-x64
 Base Path:   C:\Program Files\dotnet\sdk\2.1.302\

Host (useful for support):
  Version: 2.1.2
  Commit:  811c3ce6c0

.NET Core SDKs installed:
  1.0.0-rc4-004771 [C:\Program Files\dotnet\sdk]
  1.0.0 [C:\Program Files\dotnet\sdk]
  1.0.3 [C:\Program Files\dotnet\sdk]
  1.0.4 [C:\Program Files\dotnet\sdk]
  1.1.0 [C:\Program Files\dotnet\sdk]
  2.0.2 [C:\Program Files\dotnet\sdk]
  2.1.2 [C:\Program Files\dotnet\sdk]
  2.1.4 [C:\Program Files\dotnet\sdk]
  2.1.100 [C:\Program Files\dotnet\sdk]
  2.1.101 [C:\Program Files\dotnet\sdk]
  2.1.104 [C:\Program Files\dotnet\sdk]
  2.1.105 [C:\Program Files\dotnet\sdk]
  2.1.200 [C:\Program Files\dotnet\sdk]
  2.1.201 [C:\Program Files\dotnet\sdk]
  2.1.202 [C:\Program Files\dotnet\sdk]
  2.1.300-preview2-008533 [C:\Program Files\dotnet\sdk]
  2.1.300-rc1-008673 [C:\Program Files\dotnet\sdk]
  2.1.300 [C:\Program Files\dotnet\sdk]
  2.1.301 [C:\Program Files\dotnet\sdk]
  2.1.302 [C:\Program Files\dotnet\sdk]

.NET Core runtimes installed:
  Microsoft.AspNetCore.All 2.1.0-preview2-final [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.All 2.1.0-rc1-final [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.All 2.1.0 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.All 2.1.1 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.All 2.1.2 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.App 2.1.0-preview2-final [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 2.1.0-rc1-final [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 2.1.0 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 2.1.1 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 2.1.2 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 1.0.3 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 1.0.4 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 1.0.5 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 1.1.0 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 1.1.1 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 1.1.2 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.0.0 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.0.3 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.0.5 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.0.6 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.0.7 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.0.9 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.1.0-preview2-26406-04 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.1.0-rc1 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.1.0 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.1.1 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.1.2 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]

To install additional .NET Core runtimes or SDKs:
  https://aka.ms/dotnet-download
PM> 
8
Leniel Maccaferri

Editer mon fichier .csproj et ajouter la ligne suivante a fonctionné pour moi:

<PackageReference Include="Microsoft.NetCore.App" Version="2.1.1" />
6
TadGhostal

Dans mon cas, la réponse de @ Patrick est correcte. Au moins pour VS 2017 (15.8.9) avec le fichier SDK "dotnet-sdk-2.1.403-win-x64.exe" installé.

Symptômes: La création d'un nouveau projet Web définit la version Aspnetcore.App sur 2.1 même si le dernier SDK est installé. Toute tentative de modification de la version via le gestionnaire NuGet répond par "projet bloqué".

Resolution: Ajoutez Version = "2.1" à la référence dans CSPROJ comme ceci:

<PackageReference Include="Microsoft.AspNetCore.App" Version="2.1" />

Après l'enregistrement/la réouverture, le gestionnaire NuGet permettra de sélectionner d'autres versions du SDK. Notez que l'ajout de Version = "2.1.5" directement, puis l'enregistrement du fichier CSProj doivent déclencher automatiquement la mise à niveau/la restauration.

Merci @ Patrick

1
Ken

Pour moi, j'ai eu la ligne suivante deux fois dans le fichier csproj

<PackageReference Include="Microsoft.AspNetCore.StaticFiles " Version="2.2.0" />

Supprimer simplement le doublon a résolu le problème

0
ben_mj
  1. Clic droit sur votre projet
  2. Cliquez sur "Propriétés"
  3. Changer le "Cadre cible" en conséquence
  4. Enregistrez et fermez la fenêtre des propriétés. Cela résoudra le problème automatiquement, sinon vous pouvez accéder à Nuget et mettre à niveau les assemblys vous-même.
0
user11829980