Difference between Web Site Project, and Web Application Project?

Hi - can anyone please explain, in simple terms, what the difference is between a Web Site Project, and a Web Application Project?

I've read Scotts blog at http://webproject.scottgu.com/VisualBasic/Migration/Migration.aspx - but am none the wiser.

I'm about to upgrade from VS2003 to VS2005 - and don't want to waste a lot of time upgrading existing 2003 web apps to 2005 web site projects, if web application projects are more appropriate.

Thanks for any guidance,


2/22/2006 10:21:36 AM
asp.net.visual-studio-2005 7760 articles. 0 followers. Follow

10 Replies

Similar Articles

[PageSpeed] 19
Get it on Google Play
Get it on Apple App Store

I have exactly the same question, and can't find any information about it.
Can anyone help us?


2/22/2006 12:52:20 PM

Also interested in this answer.


2/22/2006 2:44:22 PM

Hi - found some more info here: http://webproject.scottgu.com/Default.aspx - looks like it is simply a change to the VS2005 environment, to make it more like the VS 2003 project models we may be used to (ie. has Bin directory, no App_ dirs etc).

Still has some issues (listed) in terms of event wireup from the WYSIWYG, but can be overcome easily.

All .vb files will be compiled into 1 DLL (does VS2005 compile each vb file into a separate dll file just now???).

It does not currently support management of file based SQL Express - which the basic web site aplpication model does.

So, looks like it comes down to familiarity with the old VS2003 projects (Web Application Projects), or quickly get used to the new default 2005 projects (Web Site Project).

I suppose this may cause a bit of bother for people developing tutorials - have to show how to work with C#, VB, C# web application, VB web application... that looks like a downside.

If I've got any of this wrong, please let me know.

Cheers, Mark

2/22/2006 3:10:55 PM

VS 2003 / WAP model:

Compile site into a dll, deploy dll to the target server. Supports code behind VS 2003 style, with declaration of controls in both markup and in the code behind file. Optionally it is possible to deploy site in sources. Has to have all files locally.

VS 2005 / WSP

VS only compiles on local machine at design time to get intellisense and other design-time support Yes, there may be an assembly per page, but it does not reapply matter as the resulting assemblies never get deployed, only source files are copied to the target server. Alternatively, you can precompile the site and deploy the dll. Partial classes are used in the code separation scenario, so control only has to be declared once. Does not have to have the entire site locally, is able to open a single Web Form. Only downloads files that are absolutely necessary.

ASP.NET runtime can work either way: you can place precompiled dll on the server, or you can put source files and runtime will compile them on demand as page are requested by the client.



This posting is provided "AS IS" with no warranties, and confers no rights.
2/22/2006 5:32:49 PM

We are going to be putting out some additional whitepapers in the near future that describe the differences between the two models in more detail, as well as the pros/cons of each.  Note that we'll support both project models going forward -- so you can choose whichever works best for you and your applications.

Note: If you have a VS 2003 web project and want to upgrade it with the least possible code changes, then I'd recommend trying the new VS 2005 Web Application Project preview.  It makes upgrading projects very easy and painless.

Hope this helps,


2/23/2006 7:15:41 AM

Hi Mikhail/Scott - thank you for your replies.  they do both help, a lot.

With the current preview though, am I right in thinking you can't control SQL Express (which is key to me developing locally, as I don't have full blow SQL to get the management tool) - unless I use the command line?

Thanks again,




2/23/2006 10:26:58 AM

Hi Mark,

That is correct -- SQL Express doesn't work with the current preview.  You can use SQL Server, but just not SQL Express (there is some missing feature in the project option that prevents using it in a lot of scenarios)

Hope this helps,


2/23/2006 3:58:30 PM

Scott, Mark :

Wouldn't the SQL Server Management Studio Express (CTP November 20005) 
serve as a good workaround ?



Juan T. Llibre
asp.net faq
foros de asp.net, en español
2/23/2006 4:20:33 PM
Hi Juan - I'm used to Enterprise MAnager, where I can copy databases, back them up, setup new SPs/tables etc - the management studio doesn't appear to be able to do most of that (unless I've missed it).

Thanks, MArk  
2/23/2006 7:49:21 PM

SSMSE is no Enterprise Manager for sure but, have you tried it ? 


It does have remarkable abilities which will save you a lot of command-line headaches.

You might want to ask the appropiate SQL Server guys at :
regarding particular features you have questions about.

Regarding stuff which SSMSE can't do, like schedule jobs,
you might want to look into Express Agent.

Express Agent lets you create database backup jobs and database maintenance jobs and
includes features like event logging, email notification, and the ability to import and export database job settings. 

You can also add, edit, delete, and schedule database jobs on multiple servers. 
It costs $79, but it's available at $49 as an intro price. There's a free trial available at :


Disclaimer : I am not employed by, nor receive commissions or any income from, Vale Software.


Juan T. Llibre
asp.net faq
foros de asp.net, en español
2/23/2006 9:59:11 PM