Skip to main content

Entity Services

Gli entity services sono servizi specifici per un tipo di entità, che forniscono metodi utili ai query/command handler per poter caricare, manipolare e archiviare gli oggetti di tale tipo. Gli entity services generalmente espongono metodi CRUD, più altri metodi speciali relativi all'entità in discussione (es. BlueprintsService contiene un metodo ResolveBlueprint(..), oltre ai metodi CRUD simili tra tutte le entità). Come regola generale, quando diversi command/query handler condividono parte del comportamento, il codice comune viene fattorizzato in un entity service.

Gli entity services si trovano nella cartella Application/Services/EntityServices, e sono caricati dinamicamente all'avvio tramite reflection.

tip

Perchè vengano caricate correttamente, le classi degli entity service devono risiedere sotto il namespace EMW.Hydra.Application.Services.EntityServices e il loro nome deve terminare con Service.