Here's how I understand asp.net compilation. Please correct any errors in my understanding.
If I do not publish a web site project, rather simply copy all the files to the web directory I know that the first visit it compiles and so the first visit it's a little slow. From then on (if I don't update the source) the website stays compiled correct (E.G. its not in a cache that expires)?
What if I update the source of a page, somehow ASP.NET detects a change and recompiles? Does it recompile just a single page or put everything in bin\MySiteName.dll?
Finally, if I publish a site I can't update the source code (aspx yes, but not code behind pages). This precompiles the site so the first load is quick. The site is forever compiled until a new publish.