码迷,mamicode.com
首页 > Web开发 > 详细

MVC4.0:未能加载文件或程序集“Newtonsoft.Json, Version=4.5.0.0 ”或它的某一个依赖项。找到的程序集清单定义与程序集引用不匹配

时间:2017-10-09 15:55:37      阅读:236      评论:0      收藏:0      [点我收藏+]

标签:image   自带   ges   conf   为什么   mvc   程序   一个   作用   

在搭建MVC4.0项目的时候遇到报错如下:技术分享

根据错误提示,查看程序集清单中引用版本为4.5.11,清单如下:

技术分享

图1

再看了下项目具体引用版本为6.0.0.0,如下:

技术分享

图2

项目实际引用版本与项目程序集清单中版本不一致导致报错,那么为什么会出现版本不一致情况呢?于是我又用VS新建了一个MVC4.0项目发现程序集清单中版本与项目中实际引用版本都是4.5.11

技术分享

图3

对比图2和图3可以看出文件引用路径已经被改变了。那么可以肯定的是在项目建好以后我的什么操作导致了程序集清单中版本号与项目中实际引用版本号不一致的情况。

看了图2中引用的新路径发现原来是我使用来自网络的一套开源框架自带了更高版本的Newtonsoft.Json.dll文件,在使用VS编译项目文件时,会自动寻找更高版本的引用文件进行编译;而且编译操作不会改变项目程序集清单。那么在项目运行的时候,会对项目程序集清单引用文件进行一一匹配,遇到与清单引用版本不同时会报错提示。这里要提的是在项目编译阶段是不会检查程序集清单中的版本引用是否有问题的,所以这个错误应该是个运行时错误。

解决方案

在web.config的根节点加入以下节点配置:

技术分享

 

该配置作用是告诉程序在运行时重新引用新版本进行运行

MVC4.0:未能加载文件或程序集“Newtonsoft.Json, Version=4.5.0.0 ”或它的某一个依赖项。找到的程序集清单定义与程序集引用不匹配

标签:image   自带   ges   conf   为什么   mvc   程序   一个   作用   

原文地址:http://www.cnblogs.com/clshijie/p/7641376.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!