Frage

Ich versuche, eine einfache Aufgabe zu erfüllen, eine Datenbank mit 2 Tabellen mit einer 1 zu erstellen:. * Beziehung

In einer Tabelle (Foos) Ich habe

Id
...
...

In den anderen (Bars) Ich habe

Id
FooId
...
...
...

ich eine Fremdschlüsselbeziehung von Bars zu Foos mit dem Foriegn Key Table wobei Bars erstellt auf die Säule FooId zeigen, und die Primärschlüsseltabelle sind Foos auf die ID-Säule zeigt.

Ich habe dann meine ADO.NET Entity Data Model und hob es richtig die Foos und Bars Tabellen und die Beziehung und schafft die Navigationseigenschaften.

Nun aus meiner MVC-Anwendung ich versuche, ein Foo wie folgt zu erhalten:

var foo = (from f in _db.Foos where f.Id == id select f).FirstOrDefault();

Dann versuche ich die Bars Eigenschaft des foo-Objekt zuzugreifen und keine Ergebnisse zu erhalten. Allerdings, wenn ich die _db.Bars inspizieren gesetzt Ich sehe die Bars mit den FooId auf die korrekte ID gesetzt.

Was muss ich tun, um zu beheben, warum die Beziehung nicht funktioniert? Ich habe schon in vielen Tutorials geschaut und die Dokumentation in MSDN für Tabellenbeziehungen, aber nichts ist offensichtlich falsch.

Ich versuche, dies in einer ASP.NET MVC-Anwendung zu verwenden, falls die relevant ist.

War es hilfreich?

Lösung

verwenden eine auf der Foos Tabelle enthalten

var foo = (von f in _db.Foos.Include ( "Bars"), wo f.Id == id f wählen) .FirstOrDefault ();

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top