J'ai deux projets distincts, appelons-les Alpha et Bravo.
Le projet Alpha cible uniquement le framework net462 dans son fichier project.json, tandis que le projet Bravo cible uniquement netstandard1.5. Ces 2 frameworks sont compatibles selon Microsoft .
Le projet Alpha fait référence à l'assemblage du projet Bravo. En particulier, Alpha doit implémenter une interface définie dans Bravo. Appelons cette interface IProblematic. Cette interface traite principalement des en-têtes, et définit des méthodes comme celle-ci
bool DoStuff(List<KeyValuePair<string, IEnumerable<string>>> requestHeaders, List<string> rolesList)
Le projet Alpha déclare une classe qui implémente cette interface.
public bool DoStuff(List<KeyValuePair<string, IEnumerable<string>>> requestHeaders, List<string> rolesList) {... }
Jusqu'à présent, tout va bien. Mais pendant l'exécution, je suis assailli par des erreurs telles que Unable to load one or more of the requested types
. Je pense que la source des erreurs provient des types de collections.
En utilisant la fonction "aller à la définition" de Visual Studio, je peux voir que le projet Alpha (le projet 462) utilise System.Collections.Generic défini dans .. \Framework\v4.0.30319\mscorlib.dll alors que si je fais la même chose dans les collections du projet Bravo, il m'indique qu'il utilise l'option System.Collections.Generic défini dans .. \netstandard1.3\System.Collections.dll .
Ainsi, ma question est la suivante : comment puis-je faire en sorte que le projet Alpha utilise l'assemblage Collections correct lors de l'implémentation de l'interface netstandard1.5, au lieu d'utiliser les collections de mscorlib ? Cela ne devrait-il pas être un problème mineur, étant donné que les deux frameworks sont compatibles ?
Merci d'avance à tous !