Je sais que la question a déjà été posée, mais aucune des résolutions suggérées ne fonctionne pour moi, donc je vais la poser à nouveau et, espérons-le, obtenir de nouvelles suggestions. Certains articles que j'ai lus:
VS Références .Net avec triangle jaunePourquoi une icône d’avertissement apparaît-elle lorsque j’ajoute une référence à un projet de plug-in MEF?Le point d'exclamation dans l'icône en forme de triangle jaune (dans l'Explorateur de solutions)
Mes 5 bibliothèques portables visent toutes les mêmes frameworks (j'ai vérifié et revérifié car c'était l'une des suggestions!):
Ce que j'ai essayé/fait jusqu'à présent:
Voici la section d'une de mes bibliothèques de classes portables:
<ItemGroup>
<Reference Include="crypto">
<HintPath>..\..\..\packages\Portable.BouncyCastle.1.8.1\lib\portable-
net4+sl5+wp8+win8+wpa81+MonoTouch10+MonoAndroid10+xamarinmac20+xamarinios10
\crypto.dll
</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Newtonsoft.Json">
<HintPath>..\..\..\packages\Newtonsoft.Json.8.0.3\lib\portable-
net40+sl5+wp80+win8+wpa81\Newtonsoft.Json.dll
</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="System.Net.Http">
<HintPath>..\..\..\packages\Microsoft.Net.Http.2.2.29\lib\portable-
net40+sl4+win8+wp71+wpa81\System.Net.Http.dll
</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="System.Net.Http.Extensions">
<HintPath>..\..\..\packages\Microsoft.Net.Http.2.2.29\lib\portable-
net40+sl4+win8+wp71+wpa81\System.Net.Http.Extensions.dll
</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="System.Net.Http.Primitives">
<HintPath>..\..\..\packages\Microsoft.Net.Http.2.2.29\lib\portable-
net40+sl4+win8+wp71+wpa81\System.Net.Http.Primitives.dll
</HintPath>
<Private>True</Private>
</Reference>
Mon chemin de projet physique est:
C:\xxxx\xxxxxx\xxxxx-xxxxxxx
donc, en prenant Bouncycastle comme exemple et basé sur ce qui précède, je suppose que le chemin complet ressemblerait à ceci:
C:\xxxx\xxxxxx\xxxxx-xxxxxxx\packages\Portable.BouncyCastle.1.8.1\lib\portable-net4 + sl5 + wp8 + win8 + wpa81 + MonoTouch10 + MonoAndroid10 + xamarinmac20 + xamarinios10\crypto.dll
Cela semble être un problème uniquement sur mes bibliothèques portables, car j'ai réinstallé tous les paquets Nuget sur ma solution uwp et ils ont tous fonctionné comme prévu. Ce qui est frustrant, c’est que mon projet, qui se trouve toujours à son emplacement d’origine, fonctionne parfaitement bien. J'ai désinstallé les paquets et les ai réinstallés et tout fonctionne à 100% comme prévu.
Quelqu'un a-t-il d'autres suggestions?
J'ai compris quel était le problème!
Comme mentionné à @Gusman, mon avertissement a été désactivé. Une fois que je les ai activés, les éléments suivants sont affichés pour mes projets portables:
Warning: IDE0006 - Error encountered while loading the project. Some project
features, such as full solution analysis for the failed project and projects
that depend on it, have been disabled
et il a fourni un lien vers cet article Diagnostiquer les erreurs de construction du système de projet
Après avoir suivi les instructions fournies et inspecté les nombreux fichiers se terminant par designtime.log
, j’ai remarqué qu’ils portaient tous un FAIL
faisant référence à un paquet Nuget
, mais comme je l’avais mentionné, je les ai tous supprimés de mes différents projets. le .csproj
de l'un d'eux et c'est à ce moment-là que j'ai repéré le (s) problème (s)!
Il y a en fait 2 problèmes:
La référence Microsoft.BCL.Build
pour Nuget
ne sera pas supprimée correctement !!
Lors de la ré-addition du package Microsoft.BCL.Build
Nuget, il ne définit pas le chemin correctement dans le .csproj
Voici un exemple de la faute:
<Import Project="..\..\..\packages\Microsoft.Bcl.Build.1.0.21
\build\Microsoft.Bcl.Build.targets" Condition="Exists
('..\..\..\packages\Microsoft.Bcl.Build.1.0.21
\build\Microsoft.Bcl.Build.targets')" />
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
<PropertyGroup>
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.Microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
</PropertyGroup>
<Error Condition="!Exists('..\packages\Microsoft.Bcl.Build.1.0.21\build\
Microsoft.Bcl.Build.targets')" Text="$([System.String]::Format
('$(ErrorText)', '..\packages\Microsoft.Bcl.Build.1.0.21
\build\Microsoft.Bcl.Build.targets'))" />
<Error Condition="!Exists('..\..\..\packages\Microsoft.Bcl.Build.1.0.21\build\
Microsoft.Bcl.Build.targets')" Text="$([System.String]::Format
('$(ErrorText)', '..\..\..\packages\Microsoft.Bcl.Build.1.0.21\
build\Microsoft.Bcl.Build.targets'))" />
</Target>
Comme vous pouvez le voir, la première ligne, c.-à-d. <Import Project="..\..\..\packages\Microsoft.Bcl.Build.1.0.21>
ne devrait pas être là et pourtant, elle semble rester dans le projet même si Microsoft.BCL.Build
a été supprimé.
Si vous en avez besoin, laissez-le et corrigez la deuxième entrée car c'est ce que j'ai fait. Comme vous pouvez le constater, deux entrées vérifient le package Microsoft.BCL.Build
Nuget
. Dans mon cas, j'ai simplement enlevé le premier:
`<Error Condition="!Exists('..\packages\`
et gardé celui-ci:
`<Error Condition="!Exists('..\..\..\packages\`
Une fois que j'ai fini de modifier le .csproj
, j'ai rechargé le projet dans ma solution et non seulement le problème Microsoft.BCL.Build a été résolu, mais il a également résolu toutes les autres dépendances Nuget marquées du triangle jaune.
J'ai passé la majeure partie de ma journée à ce sujet, mais j'espère que cela aidera les autres.
Si vous n'avez reçu aucune erreur de sortie lors de l'installation et qu'il n'y a pas Avertissements on build/rebuild Simplement:
- Redémarrer Visual Studio
J'ai rencontré le même problème sur une solution dans vs2017 avec 2 projets pour l'infrastructure DotNetCoreApp 1.1. Tous mes paquets ont montré le signe d'exclamation/triangles jaunes. Une fois que j'ai couru vs2017 en tant qu'administrateur, le problème a été résolu.
J'ai eu le même problème lorsque j'ai cloné un projet sur mon ordinateur portable à partir de GitHub. Des triangles jaunes sont également affichés sur mes EntityFramework et AspNet.Identity. Ce que j'ai fait pour résoudre le problème dans mon cas a été de supprimer le dossier des packages (qui contient les packages de Nuget) et de restaurer les packages une fois le projet ouvert. En conséquence, ces avertissements ont été désactivés après le redémarrage de VS2017.
Je sais que c’est un vieux billet mais récemment, j’ai eu cette erreur d’avertissement après avoir changé de genoux. J'ai fait un get avec TFS (dans Visual Studio 2017) et toutes mes références portaient soudain une icône d'avertissement. Ce que j’ai trouvé à travailler pour moi est la suivante: allez dans le navigateur d’objets, puis sélectionnez la liste déroulante "Tous les composants" et sélectionnez enfin votre framework. Pour moi, cela a fonctionné comme un charme.