2

所以我刚刚将我的网站从 MVC 3 升级到了 MVC 4 站点。我的 Web 主机没有安装 MVC 4,但被告知我可以上传 dll,一切都会好起来的。我被定向到这个链接,显然可以在安装时应用

http://weblogs.asp.net/scottgu/archive/2011/01/18/running-an-asp-net-mvc-3-app-on-a-web-server-that-doesn-t-have- asp-net-mvc-3-installed.aspx

我做了以下链接上的指示,但后来我的 ViewExtensions 出现错误,显然(经过 2 小时的研究)与我的升级有关(例如http://s77.codeinspot.com/q/2109234 ) . 无论如何,这是抛出的错误。

filterContext.Exception.Message :\hostingpath....... 错误 CS0121:以下方法或属性之间的调用不明确:'Torneyo.Infrastructure.Helpers.ViewExtensions.AccountProfile(System. Web.Mvc.ViewMasterPage)'和'Torneyo.Infrastructure.Helpers.ViewExtensions.AccountProfile(System.Web.Mvc.ViewMasterPage)'

这没有意义,因为它是相同的,它只是来自我的 viewextension 类。以下是在我的母版页上调用的部分。

//-----------for master pages
        static public User AccountProfile(this System.Web.Mvc.ViewMasterPage view)
        {
            return (Profile)view.ViewBag.AccountProfile;
        } 

因此,在虚拟主机升级之前,这些都可以正常工作。它在升级之前和之后在我的本地上完美运行。我不确定我还需要做什么。

4

2 回答 2

2

请确保您的 web.config 中有正确的绑定重定向。应用程序的某些部分可能正在引用 MVC3,而其他部分正在引用 MVC4。从 MVC3 到 MVC4 的绑定重定向会将所有内容“统一”到 MVC4。

在此处查看“升级”指南:http ://www.asp.net/whitepapers/mvc4-release-notes#_Toc303253806

于 2013-03-26T04:37:26.630 回答
0

终于修好了。所以我尝试清除 DLL 并重新安装它,但它仍然无法正常工作。我必须做的是删除所有内容(wwwroot 文件夹中的文件)。然后再次发布。之后一切正常。

于 2013-03-27T16:00:39.023 回答