ASP.Net MVC3安全升级导致程序集从3.0.0.0变为3.0.0.1
来源:互联网 发布:完美芦荟胶淘宝官网 编辑:程序博客网 时间:2024/05/01 16:50
开发环境一般引用的是本机 C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET MVC 3\Assemblies下的System.Web.Mvc.dll,当系统更新时,此文件会更新为高级版本,从而和已经部署到服务器上的System.Web.Mvc.dll版本不一致。从能在线上运行时报下面的错误:
Assembly 'TestUnsafe, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' uses 'System.Web.Mvc, Version=3.0.0.1, Culture=neutral, PublicKeyToken=31bf3856ad364e35' which has a higher version than referenced assembly 'System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'
发现没?System.Web.MVC的版本要求是3.0.0.1,而bin里放的仍然是3.0.0.0,肯定跑不起来。
OK,换个新的程序集上去,把System.Web.MVC.dll 3.0.0.1版放上去,仍然跑不起来,报错:
Parser Error Message: Could not load file or assembly 'System.Web.Mvc, Version=3.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)
这是由于Web.config未更新导致的,找到下面的几行:
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <dependentAssembly> <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" /> <bindingRedirect oldVersion="1.0.0.0-2.0.0.0" newVersion="3.0.0.0" /> </dependentAssembly>
</assemblyBinding>
</runtime>
调整oldVersion和newVersion,改成:
<runtime> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <dependentAssembly> <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" /> <bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.1" /> </dependentAssembly> </assemblyBinding> </runtime>
看到没?把旧版本的MVC统一映射到3.0.0.1版去。再访问站点,一切正常了。
- ASP.Net MVC3安全升级导致程序集从3.0.0.0变为3.0.0.1
- ASP.NET MVC3应用程序升级到WebForm
- 转:ASP.NET MVC3升级到ASP.NET MVC4
- ASP.NET MVC3升级到ASP.NET MVC4
- 初探 Asp.net MVC3
- Asp.net MVC3基础
- asp net mvc3 ViewBag
- Asp.net MVC3基础
- ASP.NET MVC3实践
- asp.net mvc3总结
- Asp.Net MVC3+ExtJS4
- ASP.NET MVC3 概要
- ASP.NET MVC3--视图
- ASP.NET MVC3
- Asp.net MVC 3.0 入门教程之一-----Asp.net MVC3.0 入门指南 1.简介
- 怎样从ASP.NET 1.1升级到ASP.NET 2.0
- ASP.NET MVC3 技术(七) ASP.NET MVC3 项目部署
- ASP.NET MVC3 技术(七) ASP.NET MVC3 项目部署
- Android Fragment 该怎么用?
- 求在一组N个的数中找出第K个最大数
- TensorFlow入门之变量操作
- QML自动循环轮播图
- Android AlarmManager使用
- ASP.Net MVC3安全升级导致程序集从3.0.0.0变为3.0.0.1
- vue.js加载页面出现闪烁问题的解决
- 运维角度浅谈MySQL数据库优化
- Android JNI中C和JAVA代码之间的互相调用
- 一张图看完语法知识
- 线程与线程类
- GPS工作原理
- JAVA相关基础知识
- [整理]PHP/HTML混写的四种方式