简单.数据延迟引用为空



我正在查询一个有3条记录的表(Jobs)。该表有一个指向JobTypes和一个名为Users的表的外键。当运行下面的查询时,我得到三条记录,但是我只能延迟加载第一个返回的结果。

IEnumerable<dynamic> jobs = _db.Jobs.All()
            .Where(_db.Jobs.Completed == false)
            .Where(_db.Jobs.RunAfter <= DateTime.Now);
Console.Out.WriteLine("Jobs Found: {0}", jobs.ToList().Count);
foreach(var job in jobs.ToList())
{
    Console.Out.WriteLine("{0} from {1}", job.JobType.Name, job.User.Username); 
}

输出为:

Jobs Found: 3
Some Job by admin

,错误信息为:不能对空引用执行运行时绑定

出现错误时,使用quickwatch job。JobType和job。用户都是空的,但工作。JobType_Id和job。User_Id属性都有一个有效的guid作为值

在foreach循环的第二次迭代时发生错误。当前所有作业都具有相同的用户id,但作业类型id不同。我已经验证了每个表中的id都是正确的。在延迟加载期间,有什么可能导致这个错误的想法吗?

您是否尝试在配置文件中添加MultipleActiveResultSets=true ?

相关内容

  • 没有找到相关文章

最新更新