Alerte de dégradation de paquet détectée (dotnet core, vs 2017)

je viens de mettre à jour tous mes paquets nuget pour ma solution (dotnet core 1.1 project).

je reçois maintenant les avertissements suivants et je ne sais pas vraiment ce qu'ils signifient.

NETStandard.Library downgrade warning


mise à Jour: je reçois toujours les Avertissements mentionnés ci-dessus. Mes projets Web mettent en garde contre Microsoft.NETCore.Le paquet App (Voir la capture d'écran ci-dessous) et mes projets lib mettent en garde contre NETStandard.Bibliothèque (voir la capture d'écran ci-dessus)

Microsoft.NETCore.App downgrade warning

lors de la mise à jour de Microsoft.NETCore.Application dans le gestionnaire de package NuGet, j'obtiens l'erreur suivante:

NuGet upgrade error

J'espère que quelqu'un pourra m'aider à me débarrasser de ces avertissements et à configurer tout ce qu'il est censé être, afin que je puisse mettre à jour tous mes paquets.

Merci d'avance!

30
demandé sur Nik 2017-03-10 06:15:32

12 réponses

Web Application project:

<RuntimeFrameworkVersion>1.0.4</RuntimeFrameworkVersion>

Lib projet:

<NetStandardImplicitPackageVersion>1.6.0</NetStandardImplicitPackageVersion>
17
répondu Nik 2018-04-05 00:49:19

dans mon cas, aucune de ces propriétés n'a été définie dans Mes fichiers csproj.

J'ai dû dire à VS de mettre à jour ces paquets via NuGet.

les avertissements sont apparus pour moi après avoir résolu l'avertissement pour référence explicite à la dépendance implicite .NETCore.App après le passage de 1.0 à 1.1.

UPDATE 21/09/17

cela semble aussi affecter les mises à niveau vers 2.0, la résolution est la même. Mettez ces paquets à jour manuellement avec NuGet. Merci à IbrarMumtaz pour avoir pointé ça!

13
répondu Gerard Wilkinson 2017-09-21 16:01:07

j'ai pu me débarrasser de ces avertissements dans mon projet en enlevant le <NetStandardImplicitPackageVersion> élément csproj fichier.

There is some information dans cet article sur les métapaquets implicites, qui semblent être à l'origine de ce problème.

Vous pourriez aussi avoir besoin de mettre à jour certaines dépendances. Par exemple, j'ai dû mettre à jour BenchmarkDotNet0.10.10.10.3 pour se débarrasser de quelques avertissements comme ceux que vous voyez.

10
répondu Drew Noakes 2017-03-17 19:39:27

cette situation m'est apparue après l'ouverture d'une solution existante mais au lieu d'Avertissements, il s'agissait d'erreurs.

j'ai ouvert le YourAwesomeApp.csproj file et a passé en revue les erreurs" Detected package downgrade " une par une et a modifié manuellement la version de cet élément de la version existante à la version spécifiée qui était affichée dans l'erreur elle-même.

par exemple, si l'erreur dit "downgrade detected" SqlServer 1.0.4 - > 1.0.3 " alors trouver la ligne pour empaqueter SqlServer et éditer la version de 1.0.3 à 1.0.4.

Ces erreurs devraient disparaître après la construction du projet.

l'inconvénient de ceci que je n'ai eu que 5 Erreurs cette fois mais que se passe-t-il si le projet d'une autre personne contenait 50 telles erreurs. Alors la tâche de cette personne d'éditer manuellement ces lignes serait très fastidieuse et fastidieuse.

9
répondu Jimmy Shaw 2017-09-26 16:23:24

j'ai pu corriger une erreur comme celle d'ajouter NoWarn dans cproj

<Project Sdk="Microsoft.NET.Sdk">

 <PropertyGroup>
    <NoWarn>$(NoWarn);NU1605</NoWarn>
  </PropertyGroup>

...
</Project>

Vous pouvez vouloir l'ajouter seulement temporairement pendant la mise à niveau de plusieurs paquets et le supprimer plus tard.

7
répondu mrapi 2018-04-10 04:49:45

j'ai récemment rencontré ce problème et mettre à jour les paquets NuGet a été ce qui a fonctionné pour moi.

1
répondu combatc2 2018-01-19 00:38:59

supprimer manuellement les dépendances des paquets nuget du projet et installer-Package pour chacun d'eux a résolu le problème dans mon cas.

1
répondu Max Favilli 2018-05-13 11:06:41

Essayez de supprimer:

<IsPackable>false</IsPackable>

à partir de votre fichier de projet - c'est ce qui a fonctionné pour moi!

Si vous êtes toujours à gauche avec NU1605 code d'Erreur, vous pouvez l'ignorer en ajoutant les lignes suivantes à votre fichier de projet:

<PropertyGroup>
    <NoWarn>NU1605</NoWarn>
</PropertyGroup>
1
répondu Emil 2018-07-18 17:15:19

Essayez d'utiliser NuGet

j'ai été faire:

error NU1605: Detected package downgrade: System.Net.NameResolution from 4.3.0 to 4.0.0. Reference the packagedirectly from the project to select a different version.

alors j'ai référencé le répertoire de paquets en lançant (dans le dossier du projet):

dotnet add package System.Net.NameResolution

Voir NuGet Errors-NU1605

Question:

un paquet de dépendances spécifie une contrainte de version sur une version plus élevée d'un paquet que la restauration est finalement résolue. C'est à cause de la "plus proche gagne" règle lors de la résolution des paquets, plus proche paquet dans le graphique peut avoir dépassé un paquet distant.

Solution:

ajouter une référence directe au projet pour la version supérieure du paquet que vous voulez utiliser.

0
répondu Robert Brooker 2018-07-05 03:40:13

j'essayais de mettre à jour Microsoft.AspNetcore.MVC à la Version 2+. La solution pour moi était de mettre à jour toutes les autres dépendances d'abord à 2+, puis finalement à la mise à niveau .MVC.

0
répondu Eric 2018-07-25 16:35:24

je pourrais résoudre le problème en téléchargeant la version antérieure du paquet à l'origine du problème, qui semble être causé par le fait de dépendre d'une version Standard de .NET qui n'est pas installée, cela devrait aussi être résolu en mettant à jour Visual Studio.

0
répondu mshwf 2018-08-27 11:04:39

j'ai résolu ce problème grâce à cette réponse. Fondamentalement, il suffit d'ajouter la ligne suivante à l'intérieur du <PropertyGroup> balises dans votre .csproj fichier:

<TargetLatestRuntimePatch>true</TargetLatestRuntimePatch>
0
répondu Shaul Behr 2018-10-02 14:03:07