Ich verwende Entity Framework 4.1 als ersten Ansatz. Ich habe die Legacy-Datenbank verwendet. In meiner edmx-Datei, die auf der Basis von Tabellen in der Legacy-Datenbank Entitätsklassen erstellt hat, gibt es eine Eins-zu-Null-Verbindung zwischen einigen Entitäten.
Obwohl ich die Tabellen der Datenbank und die Beziehung zwischen ihnen untersucht habe, habe ich nicht herausgefunden, wie one-to-zero-one Relation in der Datenbank implementiert wurde.
Für weitere Informationen füge ich einige Screenshots meines Datenbankdiagramms und der Eigenschaft seiner Beziehung und der entsprechenden Entitäten in der edmx-Datei hinzu:
Die Beziehung 1-0.1 in Ihrer Datenbank ist direkt sichtbar. Es wird zwischen Course- und OnlineCourse-Tabellen erstellt, wobei Kurs in Relation (1) ist und OnlineCourse abhängig von FK ist, das auf CourseID konfiguriert ist. FK ist auch PK des OnlineCourse = es muss einmalig sein und deswegen ist es 0..1.
Die Datenbank "always" verwendet 1 - 0..1, da reales 1 - 1 nicht effektiv für die Dateneingabe verwendet werden kann. 1 - 1 bedeutet, dass links nach rechts eingefügt werden muss, aber rechts nach links eingefügt werden muss = nicht möglich. Deshalb wird 1 - 0..1 verwendet, wobei left das Prinzipal ist und rechts davor und rechts davon abhängig ist und nach links eingefügt werden muss.
Wenn die Datenbanktabellen bereits mit einer 1: 1-Beziehung (oder einer 1: 0-1) entworfen wurden, wird EF damit gut arbeiten, obwohl es den Namen der Kindtabelle pluraliert (wenn Sie es pluralisieren lassen) .
Der grundlegende Ansatz besteht darin, einen Fremdschlüssel zu erstellen (als ob Sie eine 1: Viele-Beziehung erstellen würden) und dann einen eindeutigen Index für das Fremdschlüsselfeld anzugeben. Wollen Sie das erreichen?
Dies könnte auch helfen: Entwerfen 1: 1 und 1: m Beziehungen in SQL Server .
Nebenbei bemerkt, 1-1-Beziehungen sind oft nicht notwendig und / oder ein Symptom eines Datenbankentwurfs, der überdacht werden muss. Es klingt jedoch so, als ob du das Design geerbt hättest ... ich weiß alles darüber!
Tags und Links sql-server entity-framework-4.1 sql-server-2008 entity-relationship relation