Es scheint, dass der Fokus bei MVC3 und EF4.1 hauptsächlich auf "code first" liegt - ich kann keine Beispiele oder Tutorials finden, die die folgenden Kriterien erfüllen:
Existiert ein solches Beispiel oder Tutorial? Gibt es dokumentierte "Best Practices", um dies zu erreichen, oder Gründe dafür, dass keine Lösung auf diese Weise strukturiert ist?
Es ist ein ziemlich häufiges Szenario und es hängt davon ab, ob Sie die EDMX-Datei für das Mapping verwenden wollen oder ob das Mapping im Code definiert werden soll (wie Code zuerst).
Beide Szenarien können als Datenbank zuerst ausgeführt werden
Bei keinem dieser Ansätze werden Datenanmerkungen hinzugefügt. Datenannotationen für Entitäten sollten nicht für die Clientvalidierung verwendet werden (dies ist eine schlechte Vorgehensweise), es sei denn, Sie führen sehr einfache Anwendungen aus. In der Regel haben Ihre Ansichten einige erweiterte Erwartungen und die Validierung in Sicht kann sich von der Entität unterscheiden. Zum Beispiel können die Ansichten zum Einfügen und Aktualisieren verschiedene Validierungen erfordern und es ist nicht möglich, sie mit einem einzelnen Satz von Datenannotationen für das Objekt auszuführen. Aus diesem Grund sollten Sie Datenanmerkungen für die Validierung in spezialisierte Ansichtsmodelle verschieben und Ihre Entitäten in Modelle umwandeln und umgekehrt (Sie können AutoMapper verwenden) um dies zu vereinfachen).
Jedenfalls ist es möglich Datenanmerkungen hinzuzufügen generierte Klassen über Buddy-Klassen, aber wie bereits erwähnt, ist es keine gute Übung.