Let’s begin with a bit of background…
The company I currently work for has a bunch of Windows Form products build on .NET 4.5.
As the products are customised for each client that uses them, the product’s project architecture is loosely based on the following
> Core Framework
> Core Product 1
> Client 1
> Core Product 2
> Client 2
Each one of those is a executable product in it’s own right.
Each child is built on top of the parent product. E.g. Client 1 is built on Core Product 1, which uses Core Framework.