In a layered application, is it good practice to have you entities defined in a shared layer? I figure that I will be using them across all layers. Or do they belong in the business layer?
MSDN's layered application guideline puts the business entities in the business layer
The Layered Architecture Sample for .NET puts the entities in the shared layer
Can it be like this?
- Presentation
- Business
- Data
- Shared
- Entities
Or must it be like this
- Presentation
- Business
- Entities
- Data
- Shared
What to do and why?
