Sono abbastanza chiaro che la logica di business va nei modelli. Ma su questa domanda , si riferiscono alla logica aziendale come una convalida di basso livello (se l'utente si iscrive, richiedi la sua e-mail).
Che dire della logica aziendale che va oltre la convalida? Ad esempio, in questo momento sto lavorando a un progetto in cui l'utente è in grado di generare un preventivo dopo l'invio di un modulo. Una volta inviata, l'applicazione elaborerà diversi dati (che non sono correlati a detto modulo) e creerà alcune altre righe del database. Questo processo coinvolge 3 diverse entità di modello, che indicano chiaramente che inserire il codice per questo processo all'interno di una di quelle classi di entità modello sarebbe "sbagliato".
In questo momento sto usando il pattern Unità di lavoro per incapsulare le operazioni CRUD (database e simulazione per test), ma ho letto da qualche parte su alcuni modelli Servizio , che incapsula detto UnitOfWork
ed eventualmente processi come descritto sopra.
Qual è lo schema utilizzato per questo tipo di logica?