We are discussing how to implement Domain Driven Design.
Are there any immediate drawbacks to using a separate project for each bounded context?
All thoughts and suggestions on our approach are welcome.
So it would look like:
- ProjectA.dll (User Context Web Service)
- References
- ProjectB.dll
- ProjectB.dll (User Context Domain)
- ProjectC (Web App)
- References
- ProjectD.dll
- REST calls to ProjectA for User stuff
- ProjectD.dll (Product Context Domain)
- ProjectE.dll (Some Other Context)
- Domain
- Service
- IService.cs
- DTO
- DTO A.cs
- Entity
- Entity A.cs
- Entity B.cs
- Repository
- Repo.edmx
We are considering making some bounded contexts accessible only via web services to allow for scalability of areas that could get heavy traffic.