Big picture question - Web sites vs Web Applications

  • Thread starter Thread starter B. Chernick
  • Start date Start date
B

B. Chernick

I did my MCAD sometime ago in 1.1, using the 305 manual. I've since moved up
to VS 2005. I've created perhaps a half dozen Dot Net 2.0 web applications.
(Click on the Create Project link within Recent Projects and Asp.Net Web
Applications.) Now I find out that my co-worker has been programming in a
different style. He's been using the File/New/Web Site menu item. If I ever
noticed that option, I've forgotten it.

Could someone briefly summarize the differences between web 'sites' and web
'applications'? (I thought all web sites were web applications.)

(My immediate motivation for posting here is that my coworker approached me
for help, since his website is giving 'AccessViolationException' errors, but
he swears that he has no unmanaged code that he knows of. It also looks to
me like the web site has no references at all, if that's even possible, so
I'm even more confused.)
 
VS 2005 introduced a new type of project called a Web Site Project. It
doesn't create a single dll for the entire site. Instead, code is seperated
out more, which leads to some annoying issues. For example, calling code in
folder b from a page in folder a probably won't work because the code in
folder b may not have compiled yet. To make code available throughout an
entire web site project it has to be in the App_Code directory. This new
project type annoyed a lot of people though so MS introduced the Web
Application Project back into VS first as an add-in, then as part of VS 2005
Service Pack 1. The Web Application Project is natively available in VS
2008.

The Web Application Project works pretty much the same way it did for the
1.x projects created by VS 2002 and 2003. The Web Site Project is more of an
interesting offshoot and does make it easier for people running VS Web
Developer Express to create a web site since they don't have to compile it
into a single-dll. Still, I prefer the single-dll method since it's easier
to pre-compile and if you need to call code that gets compiled into multiple
dlls you get the inter-dll communication hit.

Hope this helps,
Mark Fitzpatrick
Microsoft MVP - Expression
 
I prefer the same.

The time between VS2005 (no SP) and VS2005 SP1 seemed like an eternity.

That was one of those MS being too clever for its own good .. moments, IMHO.
 
I'm getting the impression (correct me if I'm wrong) that Web application
projects are for professionals and web site projects are for amateurs.
Looks like I'll be sticking with web app projects. Thanks.
 
That's the general impression most people had, but the Web Site Projects do
have advantages and weren't a bad idea, but most designers who are used to
the Web Application Projects find them more difficult and not worth the
effort. Still, there are a number of great open source apps that are written
with a Web Site Project since the core logic can still be put into an
external class project, avoiding some of the most annoying issues for this
project type.

Hope this helps,
Mark Fitzpatrick
Microsoft MVP - Expression
 
Hi,

In the end almost all the same things can be done with either of the models,
so in my opinion it is personal preference which one you use. I prefer WAP
but only because I've used to work with that kind of model since the first
days of .NET.
 
Just one further note: So far (and I am still looking) I cannot find a
specific reference in the VS 2005 Help (Team edition) for the phrase 'Web
Site Project', either in the index or by search.
 
Back
Top