Erreur de redirection de version de System.Net.Http

Peut-être avez-vous un souci récurant avec System.Net.Http qui fait qu’à chaque mise à jour de vos packages nuget, votre configuration n’est plus bonne.

Votre librairie System.Net.Http en version 4.3.3 devrait inclure une redirection vers l’assembly 4.2.2.0, mais celui-ci change pour une autre valeur.

Dans l’idéal votre configuration contiendrait ceci :


<assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
   <bindingRedirect oldVersion="0.0.0.0-4.2.0.0" newVersion="4.2.0.0"/>
</dependentAssembly>

Mais devient régulièrement :


<assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
   <bindingRedirect oldVersion="0.0.0.0-4.1.1.2" newVersion="4.1.1.2"/>
</dependentAssembly>

Le numéro 4.x.x.x peut varier

Pas terrible comme situation. Plutôt que de pester après Visual studio, il serait bon de jeter un œil aux warnings de votre solution.

Il est fort probable que vous ayez un message de la sorte :

Liste de warnings liés à la configuration

Pour s’en sortir, il suffit de suivre la consigne indiquée. On sélectionne la ligne de warning et on valide la correction via la touche Enter de son clavier (le double click fonctionne aussi). Ce qui affichera la boite de dialogue suivante :

Question préléminaire à la correction du fichier de configuration

Après validation, votre fichier de configuration contiendra les redirections manquantes et vous ne rencontrerez plus de problèmes avec System.Net.Http.

Moralité

Toujours laisser visibles les warnings, et prendre le temps de les lire pour les résoudre. Les cacher, c’est mal !

Un projet qui est stable et qui s’inscrit dans le temps n’a pas de warnings.

Jérémy Jeanson

Comments

You have to be logged in to comment this post.