I have three projects in my C# 4 solution.

* **MooDB:** Has my domain objects in, NHibernate mappings, presentation classes.
* **Data:** Has my data access layer classes (using NHibernate)
* **Test:** Has my test classes

Here's a screenshot:

![enter image description here](https://i.stack.imgur.com/49NyU.png)

I've noticed that I've got `app.config` and `hibernate.cfg.xml` in my `Test` project. This does seem right. I don't have an `app.config` in my `Data` project which is a problem because I want to use `log4net` in my `Data` project but I can't configure it if there's no `app.config` there.

What's the best way to set up my solution? Should there be an `app.config` for each project or for the solution as a whole? Do I need one for my `Test` project? Have I organized it according to "best practise"?