ASP .NET Web Sites did not exist in VS 2003. In VS 2003, you had ASP .NET
Web Application Projects. These were initially done away with by Microsoft
with the first release of VS 2005 in favor of ASP .NET Web Sites. There are
VERY many things that differ between the two, but one most notable
difference is that, rather than all the code-behind's of a traditional Web
Application Project being compiled into one assembly (.dll) at design-time,
Web Sites are not pre-compiled by default (and that's why you can't find the
"designer files), the are dynamically compiled at run-time. Also, even when
that compile happens, each page is compiled into its own assembly (.dll).
This type of development was created to give developers of large sites a
more fine level of granular control over the contents of their sites.
There was immediate "grumbling" from VS 2003 developers, who were already
invested in the more traditional "Project" structure for the ASP .NET work,
and Micorosft added support for ASP.NET Web Application Projects back into
VS 2005 with SP1. With VS 2008, you can do either type of work right out of
the box.
1. So, as for designer files in a Web Site, they don't exist, so stop
looking for them - you won't find them.
2. As for the page event-handling code, that *can* still be written in the
traditional code-behind paradigm or the code *can* be injected directly into
the .aspx page in a server-side script tag up at the top of the file.
However, so much works right out of the box in VS 2005/2008, that you can
get a lot of functionality without writing any code at all (again, the
controld declare what they want to do via their properties and that is
dynamically translated into code at run time).
Now, since each page is effectively its own island in a web site (no more
single assembly for all the pages), any code that must be available to all
pages, is generally kept in a special web site folder called "App_Code".
As for the .dlls that you are referring to, it is most likely that they were
pre-compiled (not the default action) by clicking the Build menu and then
the "Publish" option. This allows you to pre-compile the page .dlls, so
that this doesn't have to happen at run-time. They are not essential to the
development process though.
I think that most enterprise developers would tell you that web sites are
not worth the trouble. Since they are not "Projects", they are not "built"
(and this is why pressing the "build" button didn't do any creation of code
for you), and if you're not careful, result in your source code having to be
deployed to the production environment.
Have a look at these for more info.:
http://www.c-sharpcorner.com/UploadFile/kalisk/website02232009162404PM/website.aspx
http://www.codersbarn.com/post/2008/06/ASPNET-Web-Site-versus-Web-Application-Project.aspx
http://aspnetresources.com/blog/web_site_vs_web_application_project_wap.aspx
-Scott