Reduce large website build time in Visual Studio 2005

When you have a pretty large web site in Visual Studio 2005, the site build time grows dramatically and it becomes very difficult to change code and then hit F5 (or Ctrl+Shift+B) in order to see if the project builds properly or not. In Pageflakes, we have a giant web site. It takes so long to build the site that we generally issue the build command, go to kitchen and make a cup of tea, drink it, come back and see the site still building. Generally when we do this 20 to 30 times per day, we start feeling sick (not because of VS 2005 instead of too much tea).

Here's a cool idea we tried. You can make folders hidden by going to Windows Explorer, go to Folder properties, check mark "Hidden" and click OK and then select "Apply to current item only". This will make the folder hidden and the folder will disappear from Windows Explorer unless you have turned on the option to show hidden files and folders. You will also see the folders disappeared from Visual Studio. Now we use Total Commander instead of Windows Explorer so hidden folders are not a problem to us. Bascially none of us remember anymore how to use Windows Explorer because we are so used to Total Commander now. Try it, it will change your life.

When you make folders hidden, Visual Studio will not build them! So you can make App_Data, App_Themes, images, stylesheets, javascripts, html files hidden and Visual Studio will skip them. Around 70% of our web site is non C# code. So, we gained dramatical reduction in web site build time by trying this idea. Another idea is to move all classes from App_Code to external DLL project. Thus they will build once and VS will not build them again and again if you make some changes in some codebehind file or some .aspx or .ascx file. This will also give you significant build time reduction.

Of course you can turn off Build Website and use Build Page option. But that does not help. We want to ensure the web site code is not broken due to any change. So, we need Build Website option.

10 Comments

Comments have been disabled for this content.