3

Ich programmiere eine edmx-Datei als Teil unseres Code-Generierungsprozesses und ich würde gerne wissen, wie der Designer entscheidet, "1" oder "0..1" für eine Beziehung zu verwenden, wenn Sie "Modell aus Datenbank aktualisieren" ". Irgendein Einblick darauf?Wie sagt das Entity Framework aus, ob eine Multiplizität von "Eins" oder "Null oder Eins" in einer Beziehung verwendet werden sollte?

Dank

Edit:

Ok, ich denke, es nutzt „0..1“, wenn die „n“ -Seite ein Nullable-Fremdschlüssel ist und „1“, wenn es nicht auf NULL festlegbare ist. Kann das jemand bestätigen?

Antwort

4

Ja, die Einstellung "0..1" oder "1" für die Rolle der übergeordneten Relation hängt von der Tatsache ab, ob die Spalte nullfähig ist oder nicht.
Vergessen Sie nicht, dass die Kardinalität 1 (Parent) bis 0..1 (Child) ist, wenn die Beziehung über Teile von Primärschlüsselspalten aus beiden Tabellen (1 zu 1 Assoziation) aufgebaut wird.
Wenn Sie ein neues edmx-Generierungstool entwickeln, empfehlen wir Ihnen, so viel wie möglich zu experimentieren und zu analysieren. Wir haben ein Design-Time-Tool zum Generieren und Editieren von Entity Framework- und LINQ to SQL-Modellen mit weiterer Code-Generierung für Oracle, MySQL, PostgreSQL, SQL Server und SQLite für unsere Kunden entwickelt. Es gab keine Probleme mit SQL Server, da Entity Framework ursprünglich entwickelt wurde, aber andere Datenbanken zeigten einige Schwierigkeiten auf. Es gab sogar den Eindruck, dass einige Besonderheiten der Oracle-Datenbank zum Beispiel überhaupt nicht berücksichtigt wurden.

0

Ihre Bearbeitung ist genau richtig. Die EF erkennt es basierend darauf, ob das Feld nullfähig ist oder nicht.