加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc – MVC 3 RC上的全局过滤器注册错误

发布时间:2020-12-16 06:58:02 所属栏目:asp.Net 来源:网络整理
导读:我有一个mvc 3网络应用程序,但我的共享网络托管公司仅支持MVC 2. 所以我也部署了mvc 3相关的dll,它在服务器上运行良好,直到它是mvc 3 beta. 昨天,我将我的电脑环境升级到mvc 3 RC并重建我的网络应用程序.该应用程序在我的本地电脑上运行良好,但当我在托管服
我有一个mvc 3网络应用程序,但我的共享网络托管公司仅支持MVC 2.
所以我也部署了mvc 3相关的dll,它在服务器上运行良好,直到它是mvc 3 beta.

昨天,我将我的电脑环境升级到mvc 3 RC并重建我的网络应用程序.该应用程序在我的本地电脑上运行良好,但当我在托管服务器上部署和运行时,它会出错.

[MissingMethodException: Method not found: 'Void System.Web.Mvc.GlobalFilterCollection.Add(System.Object)'.]
Myweb.MvcApplication.RegisterGlobalFilters(GlobalFilterCollection filters) in c:myGlobal.asax.cs:18
Myweb.MvcApplication.Application_Start() in c:myGlobal.asax.cs:36

如您所见,当我尝试在global.asax中注册全局过滤器时,它说它无法找到Mvc.GlobalFilterCollection.Add(object)方法.

如果我没有注册任何全局过滤器,整个网络在托管服务器上运行良好.

我该如何解决这个错误?

编辑:
似乎mvc3 beta已在托管服务器的GAC中注册.他们说不是,但我在我的应用程序中检查了引用的System.Web.Mvc.dll的位置.

解决方法

根据您的描述,我看起来您在计算机上使用的MVC 3版本与上载到服务器的版本之间存在mksmatch.我们更改了GlobalFilterCollection.Add的参数,看起来您正在使用MVC 3 RC在PC上编译应用程序,但是您将其部署到具有MVC 3 Beta的服务器上.请确保您的服务器上的System.Web.Mvc.dll版本是正确的.

编辑:要确认Eilon的评论,如果MVC 3 Beta已安装到GAC中,那么即使您的应用程序的bin文件夹中有RC版本,它也将始终获胜.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读