Meine Frage bezieht sich eher auf die Architektur einer MVC-Anwendung. Beispielsweise wird empfohlen, DI mit dem Repository-Muster zu verwenden, um den Datenzugriff vom Controller zu entkoppeln. Es wird jedoch nur sehr wenig darüber gesagt, wie dies speziell für MVC erfolgen soll. Wo würden wir zum Beispiel die Repository-Klassen platzieren? Sie scheinen nicht modellspezifisch zu sein, da das Modell ebenfalls relativ von den eigentlichen Datenzugriffstechnologien abgekoppelt sein sollte.
Eine zweite Frage betrifft die Strukturierung der Ebenen oder Schichten. Die meisten Beispielanwendungen (Nerd-Dinner, Music Store usw.) scheinen alle einen einstufigen 2-Ebenen-Ansatz zu verwenden (ohne Tests zu zählen), bei dem Controller normalerweise direkt L2S- oder EF-Code aufrufen.
Wenn ich eine Multi-Tier / Layer-Anwendung erstellen möchte, welche Best Practices gibt es in Bezug auf MVC?