2009-05-03 22 views
1

Ich verwende ADO.Net Entity Framework und C# die Sprachen von einem Ziel retreive mit dieser:ADO.Net Entity Framework Objektnavigation?

var list = 
    from dd in guiaContext.DestinationDetail 
    where dd.id_destination == destinationID 
    select dd; 

Aber wenn ich die Sprache in einer foreach-Zugang:

foreach (DestinationDetail detail in list) 
    languagesList.Add(detail.Language.ds_language); 

detail.Language ist Null. Warum?

Vielen Dank!

Antwort

3

Gibt es 2 Tabellen: Ziel und Sprache? Gibt es einen Fremdschlüsselbezug zwischen Ziel- und Sprachtabelle?

Das würde helfen, das obige Problem der Sprache zu kommentieren, die null ist.

Standardmäßig ruft EF die referenzierte Tabelle nicht ab (Lazy Loading).

Versuchen Sie folgendes:

var list = von dd in guiaContext.DestinationDetail include ("Language"), wo dd.id_destination == destinationID dd wählen;

Blick auf den folgenden Link auf eager loading in Entity Framework: http://msdn.microsoft.com/en-us/library/bb896272.aspx

Verwandte Themen