无法加载文件或程序集"System.Net.Http,版本= 4.0.0.0,区域性=中性,PublicKeyToken = b03f5f7f11d50a3a"
我已将项目复制到仅安装了Visual Studio 2015社区和SQL Server 2016 Express的干净的Windows 10计算机上.除了与Windows 10和VS2015或SQL Server一起安装的框架版本外,没有安装其他框架版本.
I've copied my project to a clean Windows 10 machine with only Visual Studio 2015 Community and SQL Server 2016 Express installed. There are no other framework versions installed apart from those installed with Windows 10 and VS2015 or SQL Server.
当我尝试启动WebApi项目时,收到消息:
When I try to start the WebApi project I get the message:
无法加载文件或程序集"System.Net.Http,版本= 4.0.0.0,区域性=中性,PublicKeyToken = b03f5f7f11d50a3a"或其依赖项之一.系统找不到指定的文件.
Could not load file or assembly "System.Net.Http, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" or one of its dependencies. The system cannot find the file specified.
该项目的软件包包括:
<package id="Microsoft.AspNet.WebApi" version="5.2.3" targetFramework="net45" />
<package id="Microsoft.AspNet.WebApi.Client" version="5.2.3" targetFramework="net45" />
<package id="Microsoft.AspNet.WebApi.Core" version="5.2.3" targetFramework="net45" />
<package id="Microsoft.AspNet.WebApi.Tracing" version="5.2.3" targetFramework="net45" />
<package id="Microsoft.AspNet.WebApi.WebHost" version="5.2.3" targetFramework="net45" />
使用.NET Framework 4.6.1构建项目后,System.Net.Http
在bin
文件夹中找不到该文件.
After building the project with .NET Framework 4.6.1, System.Net.Http
the file is not found in the bin
folder.
文件的路径指向:
C:\ Program Files(x86)\ Reference Assemblies \ Microsoft \ Framework.NETFramework \ v4.6.1 \ System.Net.Http.dll
C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework.NETFramework\v4.6.1\System.Net.Http.dll
文件System.Net.Http.Formatting
的路径指向:
C:\ Development \ MyApp \ packages \ Microsoft.AspNet.WebApi.Client.5.2.3 \ lib \ net45 \ System.Net.Http.Formatting.dll
C:\Development\MyApp\packages\Microsoft.AspNet.WebApi.Client.5.2.3\lib\net45\System.Net.Http.Formatting.dll
整个项目应该以4.5.1为目标,还是有另一种方式引用正确的程序集?
Should the whole project target 4.5.1 or is there another way to reference the right assemblies?
请遵循以下步骤,
- 将Visual Studio更新到最新版本(重要)
- 从
web.config
删除所有绑定重定向
-
将此添加到
.csproj
文件:
- Update visual studio to latest version (it matters)
- Remove all binding redirects from
web.config
Add this to the
.csproj
file:
<PropertyGroup>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
<GenerateBindingRedirectsOutputType>true</GenerateBindingRedirectsOutputType>
</PropertyGroup>
bin
文件夹中应该有一个(WebAppName).dll.config
文件web.config
.csproj
文件中删除以上内容
bin
folder there should be a (WebAppName).dll.config
fileweb.config
.csproj
file应该可以