---
title: "How to: Creating project groups under a single solution"
url: "https://osherove.com/blog/2004/4/29/how-to-creating-project-groups-under-a-single-solution.md"
canonical: "https://osherove.com/blog/2004/4/29/how-to-creating-project-groups-under-a-single-solution.html"
published: "2004-04-29T20:13:00"
updated: "2004-04-29T20:13:00"
tags: [".Net Original"]
author: "Roy Osherove"
description: "One of the features that I seem to miss most about working with VS.Net and working on an enterprise level application (10+ projects in the same solution) is having no folders inside the solution with which to group…"
usage: "Licensed under CC BY 4.0 — reuse, quote and adapt with attribution (Roy Osherove, link to the original page)."
license: "https://creativecommons.org/licenses/by/4.0/"
---

# How to: Creating project groups under a single solution

By Roy Osherove April 29, 2004 In [.Net Original](https://osherove.com/blog/category/net-original)

**Historical article** · Originally published April 29, 2004; technical details may be outdated.

One of the features that I seem to miss most about working with VS.Net and working on an enterprise level application (10+ projects in the same solution) is having no folders inside the solution with which to group related projects together. For example, usually I'll have a pair of projects for each Application tier, one for unit tests and another for the tier implementation (“Dal“,“Dal.Tests“). Using such a folder scheme as mentioned above I'd have a folder under my solution called “Dal” under which these two projects will reside.

It gets more complicated when you want to include various application blocks with their code inside the solution, which in turn might be comprised of several projects on their own (the logging application block comprises 3-4 projects.ugh)  Soon the solution starts to look like a big pile of projects and you can't seem to find anything without going through hell.

Well. There's good news and good news.

The g_ood_ news is that in VS.Net 2005 you get these folders.

The _better_ news is that you don't have to wait for Vs.Net 2005 to get this functionality.

If you have VS.Net enterprise edition, you can use something called “Enterprise Template Project” to act as a project folder. To accomplish this here's how I'd create the scenario depicted above:

- Create a new empty solution
- Right  click on the solution and select "Add-New Project"
- From the dialog select "Other Project Types"
- Select the "Enterprise Template Project"
- You get a new project with a weird icon inside your solution.
- Now, here's the kicker: right click on your newly added project and select "Add-"
- You get a "New project" in that menu. You've just added a "folder" to your solution.

You can add Template projects inside template projects - giving you the ability to create a very complicated and inclusive hierarchy of your enterprise solution. I've seen such a solution containing about 30 project, all grouped and named logically, and it was a breeze to navigate in.

Have fun! (Thanks for the tip, Ohad)

## More in .Net Original

[All posts in .Net Original](https://osherove.com/blog/category/net-original)

- Apr 29, 2004

    ### [TrimEnd() Vs. SubString()](https://osherove.com/blog/2004/4/29/trimend-vs-substring.html)

- Apr 29, 2004

    ### [Why is VS.Net Add-in architecture so overly complicated?](https://osherove.com/blog/2004/4/29/why-is-vsnet-add-in-architecture-so-overly-complicated.html)

- Apr 29, 2004

    ### [Bill Vaughn blogs, and I ask an ADO.Net question](https://osherove.com/blog/2004/4/29/bill-vaughn-blogs-and-i-ask-an-adonet-question.html)

- Apr 25, 2004

    ### [1st prize just got a whole lot bigger](https://osherove.com/blog/2004/4/25/1st-prize-just-got-a-whole-lot-bigger.html)


---

## About the author

**Roy Osherove**: Senior Solutions Architect at AWS working on AI for production and AI-driven development; author of The Art of Unit Testing and Elastic Leadership, with about 20 years of consulting and training on unit testing, TDD, team leadership and continuous delivery.

### Sites

- [RobotPaper](https://robotpaper.ai/): This blog: AI patterns and anti-patterns, AI and coding agents, and engineering leadership.
- [osherove.com](https://osherove.com): Roy's personal site. Author of The Art of Unit Testing and Elastic Leadership; consulting and training on unit testing, TDD, team leadership and continuous delivery, plus about 20 years of blog posts.
- [The Art of Unit Testing](https://www.artofunittesting.com): The Art of Unit Testing, 3rd Edition (Manning): readable, maintainable, trustworthy unit tests, plus TDD workshops in C#, JavaScript, Java and Kotlin.
- [5whys.com](https://www.5whys.com): Roy's writing on software team leadership: self-organizing teams, surviving chaos, learning mode and the Elastic Leadership model.
- [Pipeline Driven](https://pipelinedriven.org): Continuous delivery and DevOps practices: build patterns, pipeline-friendly testing, DevOps metrics and enterprise DevOps.
- [Elastic Leadership](https://www.elasticleadership.com): Elastic Leadership, Roy's framework for software team leaders (survival, learning and self-organizing modes).

### Social

- X: https://x.com/royosherove
- LinkedIn: https://www.linkedin.com/in/osherove/

### Contact

- Contact form: https://forms.gle/jQSx5KoXvrVA1JCK7

### License

Licensed under CC BY 4.0 — reuse, quote and adapt with attribution (Roy Osherove, link to the original page). License: https://creativecommons.org/licenses/by/4.0/
