首页 文章

程序集'SomeAssembly, uses ' System.Web.Mvc,Version = 4.0.0.0,其版本高于引用的程序集'System.Web.Mvc,Version 3.0.0.0

提问于
浏览
13

在VS 2012 RTM中打开并编译我的VS 2010 .net 4.0 MVC3项目后,我得到以下错误 . 如何在不升级到MVC4的情况下解决这个问题?

我和VS 2010和VS 2012并排安装 .

错误1程序集'SomeAssembly,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = null'使用'System.Web.Mvc,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35',其版本高于引用程序集'System.Web.Mvc,Version = 3.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35'

5 回答

  • 7

    另一件需要检查的事情是,您还没有测试项目仍在引用解决方案中的mvc3程序集 . 那是什么让我 .

  • 11

    检查你的 web.config . system.web/assemblies 具有3.0版,即使您的项目引用了4.0 .

    对我来说就是这样 .

  • 1

    转到引用,检查当前版本的System.web.mvc(我猜它仍指向mvc3) . 删除它们并再次添加引用,但这次System.Web.Mvc 4.0 ..!如果您在一个解决方案中使用多个项目,那么..例如你有两个项目ProjA(MVC4)和ProjB(仍然在MVC3中),如果ProjA有ProjB或使用ProjB的参考,那么它最有可能给出上述错误 . 您可能必须在两个项目中更改MVC版本 .

  • 23

    如果您使用的是Visual Studio,则可以检查NuGet包的更新,这些更新将在不需要手动使用Web.config进行更新的情况下进行更新 . 选择工具 - >库包管理器 - >管理解决方案的NuGet包 . 通过左侧面板选择更新,然后在更新列表中查找MVC和单击更新,检查您是否是最新版本的MVC . 更新完成后,单击构建并构建解决方案 . 这就是我解决我在MVC和Fluent Validation NuGet包之间遇到的问题的方法 . 它会自动更新Web.config .

  • 0

    使用asp.net 4.5并遇到了类似的问题 . 右键单击 References 并转到 Manage NuGet Packages . 检查包含过期版本的软件包是否有更新 . 可以要求覆盖文件,但没关系 .

相关问题