Abbiamo un sito legacy che è stato scritto da tempo con MVC. È un MVC valido per la maggior parte tranne che per il livello di accesso ai dati. Il sito ha modelli, viste e controllori. Tuttavia, anziché utilizzare Entity Framework, utilizzano servizi Web che utilizzano ADO per eseguire stored procedure.
Ad esempio: diciamo che abbiamo una pagina per mostrare tutti gli utenti. Avremmo una visualizzazione users.cshtml , una classe UsersController.cs e una classe UserViewModel.cs .
Il metodo GetUsers() nel controller Utenti chiamerebbe un metodo di servizio Web chiamato WebService.GetUsers() . Questo servizio web chiamerebbe quindi una stored procedure chiamata dbo.GetUsers che conterrebbe qualcosa come select * from Users where Active = true .
Non ho mai visto questo tipo di approccio prima e mi chiedevo se fosse qualcosa che è stato inventato da chi ha realizzato questo sito, o se si tratta di uno stile architettonico del passato?
Vorrei anche sapere se questa è una buona architettura da usare.