我有以下EF查询:
TestEntities db = new TestEntities();
var questions = from q in db.Questions.Include("QuestionType")
from sq in db.SurveyQuestions
where sq.Survey == surveyTypeID
orderby sq.Order
select q;
foreach( var question in questions ) {
// ERROR: Null Reference Exception
Console.WriteLine("Question Type: " + question.QuestionType.Description);
}
Run Code Online (Sandbox Code Playgroud)
当我访问QuestionType属性时,我得到一个空引用异常.我正在使用Include("QuestionType"),但它似乎不起作用.我究竟做错了什么?
编辑:当我启用了延迟加载时,它不会抛出空引用异常.
编辑:当我执行以下操作时,Include()似乎正在工作:
var questions = db.Questions.Include("QuestionType").Select(q => q);
Run Code Online (Sandbox Code Playgroud)
当我在一个单独的实体上进行谓词时,Include似乎失败了.使用Include时是不允许的?我的查询怎么样导致这个东西不起作用?