2

I'm looking at the differences between a Web Site and a Web Application on MSDN, and am drawn to the features of a Web Site because I am tasked with devising an architecture in which customers can heavily customize the application we deliver. It seems this feature of web sites would be useful:

You want to be able to update individual files in production by just copying new versions to the production server, or by editing the files directly on the production server.

However, I'm also drawn to the MVC architecture because it has built in features for minifying scripts that are delivered to the client. I also kind of like the idea of breaking up the architecture into clean pieces since this is a very large data model we have.

But from what I can tell, these sets of features appear to be mutually exclusive. Is that true? I can't readily figure out how to create an MVC application in which custom views could be dropped in as pure source files, and be able to run, nor can I figure out how to take advantage of any MVC framework when creating a "Web Site" project. Am I missing something or do I have to pick my poison?

2
  • 1
    Indeed, thou shalt pick thy poison... But know that allowing customers to customize the application you deliver is like opening the gates of Hell. They'll screw it up royally and you'll have to pick up the pieces. But that's beside the point :-) Commented Oct 31, 2013 at 13:52
  • Oh we're going to be smart about it. Our current customization mechanism has all customizations going into a separate folder. They never overwrite our files. We just look for customized versions in a different location before defaulting to the standard view. Commented Oct 31, 2013 at 13:53

2 Answers 2

2

Take a look at ASP.NET templates in VS2013. You can create an app with both MVC and WebForms. This will probably give you a good combination of what you need. By default, view files are not compiled, so you'll always be able to publish new files without doing a full push if you want. In fact, VS2012 even allows you to publish select files or folders.

The choice between web site and web app to be is very simple. If you are creating a mostly static app, choose "web site". If you are creating an app that has even a decent amount of dynamic capabilities, choose "web app". Web Sites are not really designed to be dynamic, so the more dynamic you do in that setting, the more of a headache it will be to properly maintain it as the architecture just isn't where it would need to be.

What I would suggest is to spin both of them up and try out some scenarios that you are interested and see what works and what doesn't. Really think about how users will actually want to customize the app. Will they want to copy and paste files to production or would they rather request features and have them built properly? Or maybe they want to work with a workflow instead?

So make realistic business requirements, prototype and then decide. But based on what I'm hearing you want a WebApp and probably one that does MVC and WebForms.

Sign up to request clarification or add additional context in comments.

1 Comment

I want to avoid WebForms if at all possible. I never liked Viewstate and how it obfuscates an otherwise clean field-based architecture. But MVC looks like a nice development since I last read up on ASP.NET. And I think I can do that in VS 2012.
1

Now everything ONE ASP.Net. You will be creating a WebForm, MVC, Webpages using ASP.Net platform.

Check this video about new features in VS 2013

Not sure you can create website in ASP.Net 4.5.

From my experience, I would go with WebApplication based project, where managing namespace and other stuffs are easy. In website its hard to get the standard name for the classes(randome) generated.

Go with MVC web application.

1 Comment

That dialog looks very much like the "New Web Application" dialog as opposed to the "New Web Site" dialog. Can anyone tell me if VS 2013 has gone so far as to merge "web sites" and "web applications", or are those still separate? BTW, I already know I want to avoid Web Forms and use MVC if possible. The question is whether I can support the ability to drop in a .VBHTML or .CSHTML file on the production system and have it work without recompiling anything (assuming it's new content that I know how to link to, not trying to replace existing content).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.