Sto creando un'applicazione API Web a 3 livelli basata sulla guida di Azure qui. Questo ha un livello intermedio e un livello dati entrambi in API Web.
Finora la mia applicazione è piuttosto semplice, il livello intermedio riceve una richiesta, la traduce nel modello di dominio, la passa al livello dati che esegue un'operazione CRUD che viene poi passata indietro e mappata a un DTO per il client .
Ora sto iniziando a esaminare la verifica delle richieste. Quando una richiesta CREATE arriva al livello intermedio, può collegarsi a entità esistenti e quindi richiedere i seguenti controlli:
- Devo verificare che le entità collegate appartengano all'utente corrente
- Verifica se l'utente ha già un'entità "Attiva" dello stesso tipo richiesta.
- Verifica che le entità collegate supportino l'entità richiesta
Per me, chiamare il livello dati per ognuno di questi (e potrebbe esserci più di ogni richiesta) sta aggiungendo un po 'di sovraccarico perché dovrò fare una chiamata di servizio aggiuntiva per ognuno che potrebbe aggiungere a il tempo di richiesta.
Il recupero dei dati dovrebbe avvenire esclusivamente nel livello dati (so che sembra ovvio ...) o alcuni possono andare nel livello intermedio? Il livello intermedio eseguirà solo il recupero, nessuna manipolazione.
Grazie