-1
votes

Conflit de version détecté pour Packages Nuget

Je travaille sur un projet Web ASP.NET CORE 2.1. J'ai 1 projet dans ma solution et 3 autres bibliothèques, c'est et une architecture avancée (couche d'accès aux données ( dal code>), couche d'entreprise ( bl code>), couche commune ( CL CODE>)), je dois donc ajouter des références à connecter certaines bibliothèques et certains projets. J'ai ajouté cl code> référence à mon projet et aux bibliothèques dal code> et bl code>. Maintenant, je dois ajouter référence bl code> à mon projet, mais quand j'ajoute, je reçois ce type d'erreur:

Conflit de version détecté FR Microsoft.entityFrameworkcore / Installation / référence Microsoft.EntyTityFrameworkcore 2.2.1 directement au projet 'Web' pour résoudre ce problème P> blockQuote>

Quand j'essaie d'installer cette version, il dit P>

Restore du paquet a échoué. Rouler les modifications de l'emballage de retour pour 'web' p> blockQuote>

Je peux également mentionner que lorsque j'ajouterais référence bl code> à mon projet, il inclut également dal code> et cl code> , (et dal code> contient Microsoft.entityframeworkscore code> (2.2.1), vous ne pouvez pas comprendre quel est le problème, des idées? P>

D'autres images du Problème dans ici . p>

projet.csproj p>

<Project Sdk="Microsoft.NET.Sdk.Web">
  <PropertyGroup>
    <TargetFramework>netcoreapp2.1</TargetFramework>
    <AspNetCoreHostingModel>InProcess</AspNetCoreHostingModel>
</PropertyGroup>

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

<ItemGroup>
<ProjectReference Include="..\CL\CL.csproj" />
</ItemGroup>

</Project>


11 commentaires

Le jouet devrait également nous montrer les fichiers CSPROJ. Il n'y a nulle part où il est suffisamment d'informations pour répondre à la question.


imgur.com/a/rtjfp1i Vérifiez ceci, du bas en haut


Son très clair du message d'erreur que vous devez installer Microsoft.EntyPrameworkcore.abstractions 2.2.1 sur Web avant d'installer l'autre projet


@ARTUR_KAMALYAN Postez les erreurs réelles et non des images des erreurs. La fenêtre Gestionnaire de packages doit expliquer quels paquets ont causé le conflit. Publiez le PackagerEference Éléments de votre fichier CSPROJ , pas des images des packages. Le nouveau fichier CSPROJ est si propre que vous devriez pouvoir les trouver facilement


@ARTUR_KAMALYAN Dans tous les cas, le message explique comment vous pouvez résoudre le problème - vous faites référence à différentes versions EF de vos projets ou de leurs dépendances. Un moyen de résoudre ce problème consiste à ajouter le package Nuget que vous souhaitez sur votre projet racine. Si le problème est causé par des versions mixtes dans votre propre projet, l'onglet consolidation dans la page de gestion des packages de la solution indiquera quels projets utilisent quelles versions


@Amanb lisez-le soigneusement


@PanagiIkanavos EF uniquement est installé uniquement dans DAL , et la version que j'essaie d'installer dans mon projet est la même version, mais cela ne me permet pas d'installer comme u que vous pouvez voir


@ARTUR_KAMAALYAN Je ne peux rien voir dans cette question. Seulement un lien invalide. Ce matin, quelque chose était visible mais pas la sortie réelle à partir du gestionnaire de paquets, ni les éléments packagereenceference du fichier de projet. Juste une capture d'écran. Encore une fois, ouvrez le gestionnaire de packages sur le niveau Solution et cochez la référence Consolidate onglet. Dans tous les cas, vous ne pouvez pas discuter avec le message d'erreur. D'une manière ou d'une autre, quelque part une version différente est référencée. Vous pouvez utiliser la vue consolider pour corriger les versions mixtes ou ajouter le package que vous souhaitez sur le projet racine.


@ARTUR_KAMALYAN Je pense que vous avez manqué .abstractions dans mon commentaire


@Amanb je reçois le même problème lors de l'installation de Microsoft.EntyPrameworkcore.abstractions Sir


@Panagiikanavos sry, j'ai mal compris cela, maintenant je peux voir, il n'y a pas de packages trouvés dans la consolidation


3 Réponses :


1
votes

Le problème est dû au fait que vous avez le chemin de répertoire local à l'un de votre fichier {projetName} .csproj Veuillez consulter vos fichiers .csproj par un clic droit sur le projet et sélectionnez Modifier {ProjectName} .scproj

EG P>

<PackageReference Include="Microsoft.Extensions.Identity.Stores" Version="2.1.1" />


4 commentaires

imgur.com/a/3cumg8o , c'est mon projet.csproj, il ne contient que Microsoft .Aspnetcore.app Lorsque j'essaie d'installer Microsoft.Entyframeworkcore 2.2.1 Il doit automatiquement ajouter PackagerEference à Project.CsProj, mais l'installation échoue à chaque fois


@ARTUR_KAMALYAN Ces liens renvoient une 404. Pourquoi ne pas simplement publier le code dans la question? Il faut moins temps que de télécharger une image uniquement pour le perdre et je dois la télécharger à nouveau


@Panagiikanavos Je ne peux pas télécharger des images car je n'ai pas +15 réputation, c'est pourquoi j'avais l'habitude de les montrer de cette façon, pouvez-vous vérifier la question maintenant monsieur


Pouvez-vous clarifier cette partie: "Si oui que d'aller au gestionnaire de packages Nuget et ajoutez votre bibliothèque BU Sélectionnez Nuget.org en tant que source de package après la restauration du fichier CSProject du gestionnaire de packages Nuget aura suivi de la balise". Je vais gérer les forfaits Nuget pour le projet qui contient le hintpath, mais il a déjà Nuget.org comme source de paquet? Et comment puis-je "restaurer du gestionnaire de packages Nuget"? Merci.



1
votes

Voulez-vous juste puper que j'avais le même problème, mais avec l'aperçu de l'entitéFrameworkcore 3.0. Je l'ai résolu en déclassant simplement toutes les packages d'entitéFramework 3.0 (aperçu) Nuget à la dernière stable (2.2).

Espérons que cela aide quelqu'un aswell, m'a pris des heures ...


0 commentaires

0
votes

Option 1 Vérifiez la fenêtre d'erreur Visual Studio et identifiez le paquet effectuant le conflit. Assurez-vous que les deux paquets ont enregistré le code de version


0 commentaires