Last.
We support two ways for you to install and use the assemblies that implement ASP.NET MVC 3 on a machine:
Good post at right time. I was just wondering about the deployment and got your twitter update this post. Thanks
It's a good thing to _only_ have BCL libraries into the GAC. Everything else is project related and as such belongs into the bin of the project.
I often found webservers with different versions of log4net (or other components) into the GAC. Then when they deploy their project to the production server they get error messages about version mismatches and stuff and then the come wining at my desk..
First thing I usually do is make a copy of the virtual server and remove anything from the GAC that isn't part of of the system.* namespace. And put the assemblies into the projects bins. After a few hours (when I have checked all websites on the server) I put the new virtual machine into production and everything is running like a charm.
MVC3 rocks and I really love it.
I have a question though.
I was used to use web deployment in order to get my aspx files (until mvc2) compiled in dll and their content replaced by the dummy statement "do not delete....". I prefer this strategy when I want to post my web app on a shared hoster.
This does not seems to work for Razor files .cshtml.
Are you planning to support this for Razor also in the web deployment feature of VS2010.( I read arecent article from Phil Haack where he compiles Razor templates into dll for better reusability )
You said "You can deploy ASP.NET MVC 3 based applications to any web-server that has .NET 4 enabled".
Is it true for a Windows Server 2003/IIS6 that we had installed ASP.NET 4?
Great post! I am so amazed you can make time to provide this wonderful information.
I just had issues with an MVC 2 website on GoDaddy, where Tech Support was confused by my website. It did not "look right." Good news for Microsoft: I moved that project to Azure, where things just run and my only concern is controlling costs.
I am new to MVC. This is really helpful as it eliminates the dependency of software installation on the hosting machine.
Hi,
It turns out that you have to xcopy the following files in order to host the razor view engine:
1. System.Web.Razor.dll
2. System.Web.WebPages.dll
3. System.Web.WebPages.Razor.dll
4. System.Web.Helpers.dll
5. System.Web.WebPages.Deployment.dll
6. Microsoft.Web.Infrastructure.dll
The interesting thing is the 4,5,6, even I am not using the new Webhelpers this file is needed the same goes for the last two, my initial thought was the last two was required to deploy from the webmatrix ide, but it proved me wrong.
Hi Scott, I am just confused about the future of Webforms because Microsoft is not giving clear signals about it. Microsoft says that they are heavily investing in webforms but I cannot see the results yet. Even Asp.net 4.0 was more about cleaning up the things rather than adding up new things. Looks like we will eventually HAVE TO SWITCH TO ASP.NET MVC unless Microsoft gives a strong and clear message about webforms.
Hi Scott,
Can the same thing be achieved for SQL Server Compact Edition 4?
Will you be discussing this in detail at the upcoming MvcConf 2?
I am just confused about the future of Webforms because Microsoft is not giving clear signals about it. Microsoft says that they are heavily investing in webforms but I cannot see the results yet.
Thanks Scott. As Kazi Manzur Rashid mentioned, those additional dll's listed are required if you don't have MVC 3 loaded on a .NET 4.0 loaded win 2k8 SP2 server. Thanks Kazi for that info.
Right now I'm trying to wrap an MVC3 solution in a CWAB (Composite Web Application Block) solution. Someone else in my company successfully deployed a CWAB/MVC2 solution with some hacking of the System.Web.Routing.dll (he ran into a problem with Areas I believe).
I'll let you guys know if I'm successful or not (since we also don't have 4.0 running on the production servers, yet. For demos I've been having to create separate application pools in IIS for 2.0/3.5 and 4.0 apps on my local dev server).
But yeah, I just wanted to throw that out there into the universe. Maybe the Coding Gods will shine light upon me so I can finally make a worthwhile push to get the MVC pattern into production in one of our big apps :)
Wonderful news!
So, to get this straight: the company that hosts my web sites only need .NET Framework 4 installed and no additional MVC-stuff?
//Marcus
@Marcus,
>>>>>>>> So, to get this straight: the company that hosts my web sites only need .NET Framework 4 installed and no additional MVC-stuff?
Yep - that is correct.
Thanks,
@Justin,
>>>>>>>> I have mvc 3/razor running perfectly locally, but when I publish the code to my windows server 2008 box, it gives me the error:
>>>>>>>> Method not found: 'System.Web.Razor.GeneratorResults System.Web.Razor.RazorTemplateEngine.GenerateCode(System.IO.TextReader, System.String, System.String, System.String)'.
Can you send me email (scottgu@microsoft.com) about this? We can then help follow up and investigate.
It would be great to have a NuGet package with MVC3 bin deployment assemblies and setup.
Any chance of seeing something like that?
I'm glad I ran into this article, I thought I was going to be stuck with MVC2 (not necessarily a bad thing). I'm looking forward to using the new Razor view engine. The <%: %> syntax is a lot less tedious.