我正在使用ADO.Net Entity Framework和C#来使用它来检索目的地的语言:
var list =
from dd in guiaContext.DestinationDetail
where dd.id_destination == destinationID
select dd;
但是当我在foreach中访问语言时:
foreach (DestinationDetail detail in list)
languagesList.Add(detail.Language.ds_language);
detail.Language为null。为什么呢?
谢谢!
答案 0 :(得分:3)
是否有2个表:目的地和语言? 目的地和语言表之间是否存在外键关系?
这有助于评论上述语言无效的问题。
默认情况下,EF不检索引用的表(延迟加载)。
试试这个:
var list =来自guiaContext.DestinationDetail中的dd Include(“Language”)其中dd.id_destination == destinationID select dd;
请查看以下有关实体框架中预先加载的链接: http://msdn.microsoft.com/en-us/library/bb896272.aspx