Web Deployment Projects (WDP) was initially designed to provide msbuild and assembly merge features to WSP (Web Site Projects, the default web project model in VS05 RTM). It complements WSP nicely since WSP does not use msbuild and produces many non-deterministic assemblies versus a single assembly. WDP also allows the user to switch out web.config sections, and use custom pre- and post-build tasks. Note WDP has an additional program called aspnet_merge.exe (based on ilmerge) which merges the assemblies produced by aspnet_compiler.exe.
Web Application Projects (WAP) extend the client project system and provide a web project experience that is very similar to the VS03 web project. It uses msbuild and compiles all class files into a single assembly (note the aspx and ascx pages are still compiled dynamically on the server). Since WAP already uses msbuild, using WDP for that reason alone does not make sense.
The reason most people want to use WDP with WAP is to
- Switch out the web.config sections
- Merge all assembles (aspx+apcx assemblies and the class assembly) to a single assembly
Currently, WDP supports #1 but not #2. We are looking to add that feature in the future.
HTH!