2017-05-08 4 views
1

Je crée une bibliothèque de classes en .NET Standard, que je souhaite utiliser sous Windows et Android. Toutefois, lorsque j'essaie de référencer directement le projet ou la sortie du projet, j'obtiens AssemblyNotFoundException s à l'exécution, avec un différent pour chaque package NuGet référencé par mon projet .NET Standard. L'ajout de chaque package NuGet à chaque projet référençant le projet .NET Standard fait disparaître ce problème, mais il semble être une solution non durable. Quelle est la meilleure façon de résoudre les dépendances dans un projet .NET Standard? J'utilise Visual Studio 2017, mon projet de console est .NET 4.7 et mon projet .NET Standard est .NET Standard 1.6.Références .NET Standard Nuget

J'ai déjà référencé NETStandard.Library à partir de mon projet de console, mais cela ne fonctionne pas. Type tel que System.ValueTuple toujours lever des exceptions lorsque je tente de les utiliser.

En ce moment, l'exception que je reçois à tenter d'exécuter mon programme est la suivante:

System.IO.FileNotFoundException: 'Could not load file or assembly 'System.Runtime.Serialization.Formatters, Version=4.0.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.'

Ce qui est logique, comme je l'utilise dans mon sérialisation .NET bibliothèque standard.

+0

Il peut être nécessaire d'ajouter la redirection d'assembly nécessaire dans votre fichier app.config. Postez l'exception exacte que vous avez reçue. –

+0

@LexLi 'System.IO.FileNotFoundException: 'Impossible de charger le fichier ou l'assembly' System.Runtime.Serialization.Formatters, Version = 4.0.1.0, Culture = neutre, PublicKeyToken = b03f5f7f11d50a3a 'ou l'une de ses dépendances. Le système ne peut pas trouver le fichier spécifié.' ' – 333

+0

l'assembly réel dans votre dossier bin peut être 4.3.0.0. Vérifiez cela et apprenez comment rediriger. –

Répondre

0

Avez-vous essayé d'utiliser .Net Standard 1.4 pour votre bibliothèque de référence?