/ / Entity Framework 5 fehlende Assoziationen - SQL-Server, Visual Studio, Entity-Framework

Entity Framework 5 fehlende Assoziationen - sql-server, visual-studio, entity-framework

Ich versuche, die Verwendung von EntityFramework zu rechtfertigen und bei der ersten Hürde zu fallen. Ich verwende den ersten Datenbankansatz. So sieht es in SQL Server 2008 R2 aus:

DB-Diagramm

Wie Sie sehen können, sehr einfache Domain. Die Zuordnung ist eine Eins-zu-Viele-Beziehung zwischen User.Id und Blog.UserId.

Aber selbst mit dieser unglaublich einfachen Domain schlägt EF fehl. Wenn ich die Tabellen importiere, erhalte ich Folgendes:

EF-Modell

Wie Sie sehen, gibt es keine Zuordnung. Die Beziehung ist verschwunden und egal wie oft ich sie lösche, neu generiere, wird sie nicht angezeigt. "Fremdschlüsselspalten in das Modell aufnehmen" ist aktiviert.

Wenn ich die Tabellen jedoch mit Schlüsseln erstelle, die auf ints anstelle von GUIDs basieren, werden die Beziehungen erstellt.

Ist das ein Fehler, eine Einschränkung oder meine eigene Dummheit?

Es regt nicht mein Vertrauen an. Wie um alles in der Welt wird es in einem realen Szenario mit hundert Tischen und tausend Assoziationen funktionieren?

  • VS 2012
  • SQL Server 2008 R2
  • EF 5

Antworten:

6 für die Antwort № 1

Ich habe das Problem behoben. Das Problem wurde durch einen Schurkenindex verursacht, von dem ich nicht wusste, dass er auf dem Tisch liegt.

Wenn sich im selben Feld wie der Primärschlüssel ein EINZIGARTIGER Index befindet, kann EF die PK-FK-Beziehung überhaupt nicht generieren.

Der EF-Designer entfernte einfach den unnötigen eindeutigen Index (primär erzwingt sowieso eindeutig) und nahm die Beziehung sofort auf.