Ich richte eine n-Tier-Anwendung mit MVC, Ninject und NHibernate (meine erste mit diesen Technologien). Der Übersichtlichkeit halber sind die Schichten eine "Daten" -Stufe, eine "Dienste" -Stufe und eine "Web" -Stufe (alle sind separate Projekte).Wo sollen meine Models wohnen? Web Tier oder Daten Tier? (MVC + NHibernate)
Mit MVC haben Sie Ihre Modelle im Ordner "Models". Es scheint notwendig, meine Modelle hier zu platzieren, um stark typisierte Ansichten zu erstellen und generell mit der Philosophie von MVC zu bleiben.
Allerdings benötige ich mit NHibernate auch meine Modelle in der Ebene "Data", damit das Mapping stattfinden kann und dass NHibernate tatsächliche Objekte instanziieren kann, um zur Services-Schicht zurückzukehren.
Duplizieren der Klassen über Projekte ist nicht sehr trocken und abstrahieren sie in ihre eigene Bibliothek scheint nicht gut mit MVC (weder in der Praxis noch in der Philosophie) zu spielen.
Irgendwelche Gedanken? Wie strukturierst du deine O/RM-Objekte gegen MVC-Modelle?
Ich bin gespannt, wie die Passage von 2 Jahren hat diese Frage bestätigt (verfestigt, verstärkt, ua). Ändert MVC3 die Gleichung? Ich bereite mich darauf vor, ein Hybrid zwischen einem älteren nH Daten Tier-to-EF zu erstellen, um Scaffolding zu unterstützen. Was ist die Gruppierung von VS-Projekten beim Mischen von NH und EF heute? - thx – justSteve
Wie wäre es jetzt !? Fast 2 Jahre seit die obige Frage gestellt wurde? –