DeployWebLib
Build and merge ASP.NET user controls into DLL library which can be later used to dynamically load these user controls from code into other web application projects. You'll no longer need to distribute aspx/ascx files within this library, it is already merged to single DLL.

Project benefits
For installation and other documentation read Documentation page.

Do you have questions? - read FAQ page.


Creating new library (from wizard)
Creating new library manually (without wizard)
<Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v9.0\WebApplications\Microsoft.WebApplication.targets" />
<Import Project="$(MSBuildExtensionsPath)\DeployWebLib\DeployWebLib.targets" />
<Target Name="AfterBuild" DependsOnTargets="ModuleDeploy" />
<Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v9.0\WebApplications\Microsoft.WebApplication.targets" />
<Import Project="$(MSBuildExtensionsPath)\DeployWebLib\DeployWebLib.targets" />
<Target Name="AfterBuild" DependsOnTargets="ModuleDeploy" />

Building library
Signing library
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<PropertyGroup>
  <DeployWebLibSnkFile>test.snk</DeployWebLibSnkFile>
</PropertyGroup>
<PropertyGroup>
  <DeployWebLibSnkFile>test.snk</DeployWebLibSnkFile>
</PropertyGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />

Demo Example documentation
See more info about this in Demo Example documentation.

Inspiration was taken from project WebLibraryMaker http://weblibrarymaker.codeplex.com. This project has good starting point, but it does not meet my condition - simple solution!