Wenn Sie neu in EF sind und mit EF4 beginnen, ist die einfache Antwort das zu ignorieren - Sie werden fast sicher Fremdschlüsselverknüpfungen statt unabhängiger Vereinigungen verwenden.
Eine Fremdschlüsselverknüpfung wird durch eine Fremdschlüsselbeziehung in der Datenbank unterstützt, und diese Beziehung wird im konzeptionellen Modell explizit beschrieben. Diese Art von Assoziation ist für EF4 neu und ich verstehe, dass es sich um eine Konzession handelt, die den Problemen mit unabhängigen Vereinigungen folgt.
Wenn Sie das Speicherschema und das konzeptuelle Schema (das ist der Punkt von EF) trennen möchten, möchten Sie nicht, dass Ihr konzeptionelles Schema Dinge wie Fremdschlüssel kennt, da diese eine Datenbank sind) Konzept. Frühere Versionen von EF folgten diesem Ansatz und wir haben dieses Ding eine unabhängige Vereinigung genannt.
Betrachten Sie unabhängige Zuordnungen als Zuordnungen, die von EF ohne Kenntnis des zugrundeliegenden Fremdschlüssels verfolgt werden. EF unterstützt dies immer noch, aber sie haben erhebliche Schwächen.
EF4 in VS2010 verwendet Ihre Fremdschlüssel und erstellt Fremdschlüsselbeziehungen, sofern Sie nichts anderes angeben. Im Großen und Ganzen funktionieren diese Arbeiten wie erwartet. Es gibt noch einige Fehler - z. um kaskadieren löscht.
Wenn Sie EF lernen wollen - ich kann dieses Buch empfehlen:
http://learnentityframework.com/learnentityframework/
Alles, was Sie wissen wollen, erklärt sehr deutlich.
Okeedoke. Aber was genau sind die Probleme, die mit n-Tier und Parallelität verursacht werden? – anon
Nun, der Hauptunterschied außer dem Schemaunterschied besteht darin, dass eine Entität mit einer unabhängigen Assoziation den Fremdschlüssel in der konzeptuellen Ebene nicht verfügbar macht. Die Zuordnung wird in einem separaten Objekt verwaltet. Je nachdem, wie Sie Ihre Anwendung entwerfen, ist es komplexer, diese zusätzlichen Informationen zwischen den Ebenen zu übertragen. Fremdschlüsselzuordnungen sind einfach einfacher zu bearbeiten, da Sie den Fremdschlüssel einfach direkt auf die Entität setzen können - oder die betreffende Entität/Entität ändern. –
"Weniger einfach zu arbeiten" in meinem Kopf bedeutet nicht unbedingt "vermeiden". Letzteres legt nahe, dass es spezifische Fallstricke gibt. Gibt es irgendwelche Artikel über diese Fallstricke? (Ich habe Julia Lerman's Buch, BTW.) – anon