Voglio sapere come strutturare il mio livello di servizio
Ho pensato a qualcosa del genere:
- Assieme chiamato
SomeNamespace.Service
. - Avere una cartella separata per ogni dominio problematico (
SomeNamespace.Service.Email
). - Struttura per interfaccia / modello / servizio
Ma poi non sono sicuro, come chiamare la cartella in cui si trova il servizio attuale:
SomeNamespace.Service.Email.Contract <-- Interfaces/Abstract
- IEmailService
- ...
SomeNamespace.Service.Email.Model <-- DTO/ValueObjects
- SmtpConfiguration
- MailMessage
- ...
SomeNamespace.Service.Email.??? <-- Actual Services, but Service again would sound bad
- EmailService
- ...
Questa struttura di progetto è accettabile? O ci sono alternative migliori che dovrei prendere in considerazione?