Could not load file or assembly System.Net.Http version 4.1.1.0

余生长醉 提交于 2019-11-28 09:36:47

Fixed it by updating System.Net.Http to 4.3.1

I got the issue, and realized that it was because I had two different references. one reference was from my project library, and the second one was a dependency of a .Net Standard library, and therefore a Nuget package. The steps to solve were the following:

  • Remove the reference to System.Net.Http (project => add reference => remove the reference).
  • Keep the System.Net and System.Net.Http Nuget packages
  • Run Update-Package –reinstall System.Net.Http to bring back the reference.

Now it works again. :)

My problem was that my service had a referenced assembly that had a reference to a newer version of System.Net.Http. I've resolved the issue by updating System.Net.Http in the service.

And now the junior programmer solution.... double check that you are making the updates suggested by Jawen and Jean in Nuget Package Manager in the correct places too. Remember that you might have a solution with your project and a test project, and so double check to update both sets of References.

I had this problem, while I had 10 projects depending on each other. I fixed that by adding the version that it asked for in one of the projects that was dependent on. It was not needed for compilation, but it seems that adding it, fixed the version in other projects while restoring. So it was:

Could not load file or assembly 'System.Net.Http, Version=4.1.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.

Then:

Could not load file or assembly 'System.Net.Http, Version=4.1.1.1, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.

So I added "System.Net.Http": "4.1.1", in one project..

That actually fixed the problem while it restored 8 projects.

I am agree with Jean. Remove reference to assembly and then add new reference via Nuget! The actual System.Net.Http version doesn't matter. After removing reference to assembly, all works fine, version 4.3.2

The best and easiest way to fix this issue, is with a binding redirect.

Simply specify the oldVersion as 0.0.0.0-5.0.0.0, and newVersion as 4.1.1.0

Where 4.1.1.0 is you version, for example.

Go to the app.config and remove all the lines there that reference System.Net.Http.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!