L'architettura N-Tier / Layered è davvero utile con MVC? Qui ho alcuni progetti che utilizzano l'architettura N-Tier con MVC.
I livelli disponibili sono
- Livello entità
- Livello dati
- Livello aziendale
- Presentation Layer
- Livello di servizio
Ha alcuni altri livelli come Common, Helper ecc., ma i livelli precedenti forniscono una funzionalità importante.
Qui,
- Il livello di entità ha i mapping degli oggetti per gli schemi di database
- Livello dati - ADO.NET che fornisce connettività a qualsiasi versione del database
- Livello aziendale: un livello superiore che interagisce con i dati e il livello di entità e applica qualsiasi regola aziendale
- Presentation Layer (MVC): qui funziona in modo MVC, dove ViewModel viene creato raggruppando Entità da Entity Layer e il controller interagisce con il livello aziendale per qualsiasi richiesta in entrata.
-
Service Layer: qui è il progetto Web API in cui rende disponibile il progetto attraverso il servizio. Ciò utilizza nuovamente Entity Objects come oggetti Request e Response e interagisce con Business Layer.
- Questa stratificazione è davvero necessaria con MVC per affrontare la separazione dei problemi?
- In che modo fa esattamente la differenza rispetto a MVC?