对MVC部署进行故障诊断

时间:2009-12-19 02:14:12

标签: asp.net-mvc deployment web-hosting

我似乎没有把MVC应用程序部署到我的远程主机上。

我刚刚使用Visual Studio 2010在MVC v2中构建了an updated site,并且已经通过FTP发布并将其部署到我的主机,它无法正常工作。

Source Error:

Line 39:        <compilation>
Line 40:            <assemblies>
Line 41:                <add assembly="System.Web.Mvc, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
Line 42:                <add assembly="System.Web.Abstractions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
Line 43:                <add assembly="System.Web.Routing, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>

从链接后面可以看到,第41行显然是问题所在,说MVC程序集无法加载,因为它应该包含清单。

我很确定我提供了所有正确的引用和文件版本,那么我还能错过什么呢?通配符应用程序映射已在服务器上实现。

3 个答案:

答案 0 :(得分:1)

asp.net mvc通常安装在您运行它的系统上。在构建VS项目时,是否将MVC设置为复制到目标目录?我知道将mvc dll设置为copy并在部署mvc 1.0时没有安装在服务器上。

答案 1 :(得分:1)

在再次检查Web主机时,问题是我的服务器上不支持MVC2,我必须将项目引用设置为MVC dll的1.0版,以使网站正常工作。

答案 2 :(得分:0)

由于您计划使用程序集驻留在本地bin而不是GAC中。您可以尝试不在web.config中使用全名。

<add assembly="System.Web.Mvc"/>

您可以使用ildasm检查程序集的清单。在您在Web服务器上部署的mvc程序集的完整副本上尝试它,看看它是否有任何问题。