IIS 7 can't run ASP.NET MVC application due to missing System.Web.Helpers

Apparently I need to install MVC dependencies on the server. I found a recipe on winhost forums, which says to add the required references to your project and configure them for web deployment. I followed these steps, and it solved my problem:

  1. Add the following references to the project:

    • Microsoft.Web.Infrastructure
    • System.Web.Razor
    • System.Web.WebPages.Razor
    • System.Web.WebPages.Deployment
  2. Set the property Copy Local to True for the following references:

    • System.Web.Helpers
    • System.Web.MVC
    • System.Web.WebPages
    • Microsoft.Web.Infrastructure
    • System.Web.Razor
    • System.Web.WebPages.Razor
    • System.Web.WebPages.Deployment
  3. Re-deploy

Edit:

ITHedgeHog made me aware of a shortcut in Visual Studio 2010 for the above procedure: Right click on the project and click Add Deployable Dependencies, you will then get a dialog in which you can simply pick ASP.NET MVC.