DDD and Microservices Namespaces Naming Conventions
Building software systems using the microservices approach in combination with DDD allows you to reduce the overall complexity and simplify development by dividing the entire complex system into separate small subsystems, called bounded contexts in the DDD approach. To simplify the implementation of each subsystem as a separate microservice, it is proposed to use the namespace naming conventions in the application that implements the microservice in .NET.

Namespace Templates
System — software system short name
Context — bounded context name (subsystem)
Domain Layer
{System}.[Context].Domain | domain entities and value objects |
Application Layer
{System}.[Context].Contracts | service and other interfaces and data contracts |
{System}.[Context].Services | service implementations |
{System}.[Context].UnitTests | entity and service unit tests |
Infrastructure Layer
{System}.[Context].AdaptersImpl | application host which includes services, adapters and controllers |
{System}.Host.Controllers | API controllers |
{System}.Host | application host which includes services, adapters, and controllers |
{System}.Tests | integration and component tests |
Adapter Suffixes
-Repository
-Adapter
-Gateway
-Provider
-Store
-Db