ASP.NET 2.0 Web Applications use the BuildPrrovider objects
to generate source code for the different file types that exist in the application.
What happens is for each file type a different BuildProvider is built and the
different properties, methods, fields, etc. for each file type is accessible
within the Visual Studio 2005 IDE.
ASP.NET 2.0 includes a set of built-in BuildProviders, for
example:
PageBuildProvider
UserControlBuildProvider
MasterPageBuildProvider
With the use of the above providers, you as a developer are
able, while working inside the Visual Studio 2005, to access the different
properties, methods, etc. at design time in the code-behind or code-inline of a
Web Form or UserControl.
Have you ever asked yourself how does Visual Studio, when
you add a usercontrol into a page, know all the properties and methods of that
usercontrol? Well, BuildProviders are used to do all the work for you!
Moreover, BuildProviders are used by the “aspnet_compile.exe” utility to
generate the pre-compiled version of a web application as said in this blog
post: ASP.NET
2.0 BuildProviders.
For more information on BuildProviders check the MSDN
Documentation at: BuildProvider
Class.