This is seriously starting to bake my noodle. I've just built and deployed (via FTP) a vanilla ASP.Net MVC application (version, but have struck the following problem after deployment:

Could not load file or assembly 'System.Web.Mvc, Version=, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The module was expected to contain an assembly manifest.

Stack trace visible at

I've followed all the steps suggested by Phil Haack in deploying the application, and suspect this isn't an issue with the actual DLLs I've copied up anyway. The assembly versions for MVC are correctly specified in Web.Config, as are the Routing and Abstractions ones, so any suggestions or clues from the community would be greatly appreciated.


It could be that the server has a version of the System.Web.Mvc dll in the GAC. You can use your config file to point to the version you are using:


It turns out there were two concurrent issues at play. The main one was that the web host did not have MVC installed on the server. While I thought that copying up the MVC (and related) DLLs would have removed this problem, apparently this was not the case.

The other issue was that I'd been playing with the MVC 2.0 Preview release previously and the Web.Config still had references to that version even though MVC 1.1 was the actual assembly being used.