Dove collocare la logica in un ricco modello di dominio
-
04-10-2019 - |
Domanda
Ho un modello "notizia", ??che contiene testo, immagini ecc per display come ultime notizie su diverse pagine di un sito web. Questa "notizia" può anche essere inviato a Twitter o Facebook. E 'pulito per implementare un post metodo all'interno del modello notizia e iniettare le diverse implementazioni Post come una strategia? O è meglio avere un servizio di un'applicazione separata per questo?
Grazie
Soluzione
E non appartiene nel modello; un servizio di applicazione è più appropriata.
creare un'interfaccia, IPostService
, per esempio, con un metodo PostItem
. Quindi creare implementazioni concrete separate per Twitter e Facebook che implementano IPostService
.
Altri suggerimenti
Vorrei metterli nei cosiddetti ModelCommands.
Quindi, per ogni unità di cambiamento che vuoi apportare al modello di dominio avvolgerli in un comando modello che vengono poi eseguiti separatamente o in una catena. Questo permette anche di per incoorporate il modello unità di lavoro che rende le operazioni persitence ignorante.
Date un'occhiata a: http://msdn.microsoft.com/ en-us / magazine / dd882510.aspx