标签:清单 1.5 exception 方法 ecif 使用 程序集加载 web lin
未能加载文件或程序集“Newtonsoft.Json, Version=6.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed”或它的某一个依赖项。找到的程序集清单定义与程序集引用不匹配。 (异常来自 HRESULT:0x80131040)
说明: 执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.IO.FileLoadException: 未能加载文件或程序集“Newtonsoft.Json, Version=6.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed”或它的某一个依赖项。找到的程序集清单定义与程序集引用不匹配。 (异常来自 HRESULT:0x80131040)
源错误: 程序集加载跟踪: 下列信息有助于确定程序集“Newtonsoft.Json, Version=6.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed”未能加载的原因。
=== 预绑定状态信息 === 日志: DisplayName = Newtonsoft.Json, Version=6.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed (Fully-specified) 日志: Appbase = file:///G:/code/IronFuryServer/Route/ 日志: 初始 PrivatePath = G:\code\IronFuryServer\Route\bin 调用程序集: System.Net.Http.Formatting, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35。 === 日志: 此绑定从 default 加载上下文开始。 日志: 正在使用应用程序配置文件: G:\code\IronFuryServer\Route\web.config 日志: 使用主机配置文件: C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet.config 日志: 使用 C:\Windows\Microsoft.NET\Framework64\v4.0.30319\config\machine.config 的计算机配置文件。 日志: 策略后引用: Newtonsoft.Json, Version=6.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed 日志: 尝试下载新的 URL file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/Temporary ASP.NET Files/root/24fb3432/4a6a283a/Newtonsoft.Json.DLL。 日志: 尝试下载新的 URL file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/Temporary ASP.NET Files/root/24fb3432/4a6a283a/Newtonsoft.Json/Newtonsoft.Json.DLL。 日志: 尝试下载新的 URL file:///G:/code/IronFuryServer/Route/bin/Newtonsoft.Json.DLL。 警告: 比较程序集名称时发生不匹配: 主版本 错误: 未能完成程序集的安装(hr = 0x80131040)。探测终止。 |
因为引用出了问题,在你的程序集里面找不到的Newtonsoft.Json,所以它就拿从系统盘里面预装的旧版的来用。
结果就报版本错误了。
第一,引用不存在vs自动找到旧版的。
第二,web.config配置的版本号跟实际想要版本号不对。
第三,bin文件夹里面的根本就是旧版的。
解决方法!你可以删除bin文件夹里面的Newtonsoft.Json,重新用nuget 引用一遍
更新Newtonsoft.Json后报异常,未能加载文件或程序集“Newtonsoft.Json
标签:清单 1.5 exception 方法 ecif 使用 程序集加载 web lin
原文地址:http://www.cnblogs.com/simadi/p/7504390.html