Domain objects must live in a separate domain model library. Everything that supports the domain model in a neutral way (for example, no references to ASP.NET MVC, WCF, WPF, etc.) Belongs to the domain model.
The classes that translate between the domain model and the specific interface infrastructure (ASP.NET MVC in your case) belong to this particular project (your ASP.NET MVC project).
You may have your cartographers, etc. in a separate Mappers folder, but personally, I find it much more valuable to structure the code by function instead of infrastructure.
source
share