The located assembly's manifest definition does not match the assembly reference.

Could not load file or assembly 'System.Web.Http.WebHost, Version=5.0.0.0, Culture=neutral, 
PublicKeyToken=31bf3856ad364e35' or one of its dependencies. 
The located assembly's manifest definition does not match the assembly reference.
 (Exception from HRESULT: 0x80131040)


查看dll 版本,查看相关联的dll 的版本,确认是否版本号顺序是否正确。经查,Http.WebHost 用的是 5.0.0.0 ;System.Web.Http 用是 5.2.0.0 。修改 Http.WebHost 的版本为5.2。


自从有了 packages 与 Nuget 之后。各开发人员的电脑环境不一样,经常将 本地的引用签入到 tfs中 ,造成 packages.config 文件越来越大,dll 之间的引用混乱。

一时找不到对策,只好将 packages.config 永久的签出独占。如果大家有更好的方法,请顺便告诉我。


Visual Studio 2013中有一个新的特性。在构建应用程序时,您应该会看到警告被引用一个组装的不同版本

How to: Enable and Disable Automatic Binding Redirection

你可能感兴趣的:(.net)