当在服务器上部署 ASP.NET MVC3 的应用的时候,可能会看到如下的错误信息:
这表示你的服务器上没有安装 ASP.NET MVC3。
解决这个问题的方法有两种:
第一,当然是在服务器上安装 ASP.NET MVC3 了。不过,如果你使用的是服务器的虚拟空间,或者租用的服务器,可能没有安装的条件,那就是用第二种方法吧。
第二,错误的原因很显然是缺少适当的程序集,在已经安装 ASP.NET MVC3 的情况下,这些程序集已经被安装到 GAC 中,在网站程序中使用了对这些程序集的引用,MVC3 涉及的程序集如下所示:
我们可以通过在 ASP.NET MVC3 应用的 bin 下部署这些程序集来解决这个问题。
在开发 MVC3 应用的项目中,应该已经引用了这些程序集,在解决方案管理器中,展开引用,选中这 6 个程序集,在属性窗口中,将复制到本地 ( Copy Local) 设置为真,这将会导致在部署应用的时候,这些程序集将会被复制到本地。
在发布项目的时候,这些程序集,包括在 GAC 中的程序集将会被一起发布,这样,你的 MVC3 就可以运行了。
此文中图片来自:
<a href="http://tugberkugurlu.com/archive/deployment-of-asp-net-mvc-3-rc-2-application-on-a-shared-hosting-environment-without-begging-the-hosting-company">Deployment of ASP.Net MVC 3 RC 2 Application on a Shared Hosting Environment Without Begging The Hosting Company</a>
<a href="http://blog.agafonov.net.ua/post/2010/11/02/Deploying-ASPNET-MVC-3-web-site.aspx">Deploying ASP.NET MVC 3 web application to server where ASP.NET MVC 3 is not installed</a>