2 votes

Pourquoi NuGet se plaint-il de System.ValueTuple (4.3.1) ?

Je viens de créer une application F# de type console pour dotnet core 2. VS affiche un point d'exclamation sur System.ValueType (4.3.1) paquet.

Complaining NuGet

Je le sais. la référence est implicite :

<PackageReference Include="System.ValueTuple" Version="4.*" Condition=" '$(DisableImplicitSystemValueTupleReference)' != 'true' and '$(_FrameworkNeedsValueTupleReference)' == 'true' ">
</PackageReference>

Mais NuGet semble ne pas être d'accord avec cette situation. Cela pourrait être lié d'une manière ou d'une autre à ceci error mais le gestionnaire de paquets ne montre même pas System.ValueTuple parmi les paquets référencés. Bien que je considère que la bibliothèque, lorsqu'elle publie une application, est autonome.

Dois-je l'ignorer ou est-ce le signe d'un problème ?

2voto

Kiran Shahi Points 4435

Il peut y avoir un conflit entre les versions du framework cible et la version du paquet.

Selon nuget.org , System.ValueTuple 4.3.1 n'est pas disponible dotnet core 2.0 . Ainsi, afin d'utiliser System.ValueType vous devez mettre à jour sa version 4.4.0 ou supérieure.

2voto

Leo Liu-MSFT Points 21360

Dois-je l'ignorer ou est-ce le signe d'un problème ?

Si vous ajoutez le paquet explicitement nuget, alors changez-le avec la version flottante. Version="4.*" vous pouvez essayer de supprimer le fichier project.assets.json en el obj puis restaurez le paquet nuget.

C'est parce que les dépendances de cette info-paquet sont stockées dans le fichier project.assets.json en el obj dossier. Lorsque vous changez la version de 4.x.x à 4. En effet, nuget ne peut pas savoir si ces dépendances sont toujours compatibles avec la version 4. . Ainsi Visual Studio peut donner le triangle jaune mais sans aucune erreur.

Vous pouvez vérifier le problème similaire ici .

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X