Sto definendo un approccio che meglio si adatta alle nostre esigenze di sviluppo di una grande applicazione web. Per ora, sto pensando di andare con un'architettura ASP.NET con un DAL utilizzando Entity Framework, un concetto di repository per non accedere a DAL direttamente da BLL e una BLL che chiama il repository e rendere ogni manipolazione necessaria per preparare i dati per inserire un livello di presentazione (file .aspx).
Non ho intenzione di utilizzare i controlli ASP.Net e preferisco mantenere le cose semplici e leggere usando semplici controlli html, jQuery UI ed effettuare la maggior parte delle chiamate server con jQuery Ajax. A volte, quando necessario, ho intenzione di utilizzare i gestori (.ashx) per chiamare i metodi BLL che restituiranno JSON o HTML al client per le cose dinamiche.
La mia soluzione ha anche un progetto di test che Mock the Repository con i dati in-memory non si riposa sul database per testare i metodi BLL ...
Potrebbe essere utile aggiungere che costruiremo una grande applicazione su questa architettura con centinaia di tabelle e procedure di memorizzazione con molta lettura e scrittura nel database.
La mia domanda è, avendo questa architettura in mente, c'è qualche evidente vantaggio che posso ottenere usando un progetto MVC3 invece della base di architettura descritta su Webform? Vedi qualche problema in questa architettura che potrebbe causarci problemi durante i prossimi passi di sviluppo?
Conosco il pattern MVC per utilizzarlo in altri progetti con Django ... ma l'implementazione di Microsoft MVC è molto più complessa e dettagliata di Django MVC ed è per questo che esita (o aspetto una piccola spinta?) proprio ora prima di buttarci dentro ... Siamo in un vero progetto con scadenze e non vogliamo rallentare il processo di sviluppo senza reali benefici.