La mia domanda è più su come progettare un'applicazione MVC. Ad esempio, siamo incoraggiati a utilizzare DI con il modello Repository per disaccoppiare l'accesso ai dati dal controller, anche se su HOW si fa ben poco per farlo specificatamente per MVC. Dove inseriremmo le classi del repository, per esempio? Non sembrano essere specificamente legati al modello, poiché il modello dovrebbe anche essere relativamente disaccoppiato dalle attuali tecnologie di accesso ai dati.
Una seconda domanda riguarda come strutturare i livelli o i livelli. La maggior parte delle applicazioni di esempio (cena per nerd, negozio di musica, ecc.) Sembrano tutte utilizzare un approccio a 2 livelli a livello singolo (senza contare i test) che in genere ha controller che chiamano direttamente il codice L2S o EF.
Se voglio creare un'applicazione multilivello / layer quali sono alcune delle migliori pratiche in materia di MVC?