我是实体框架的新手,但可能会误解某些东西,或者做错了什么。
我的代码,让我得到一个特定人的任务列表:
public List<TaskObject> GetAssignedTasks(int personId)
{
var items = (from s in _te.tasks where s.person.person_id == personId select s).ToList();
var tasks = new List<TaskObject>();
foreach (var t in items)
{
TaskObject tk = Transformer.UnpackTask(t);
tasks.Add(tk);
}
return tasks;
}
我的问题是,它似乎得到了一个记录列表,但没有加载相关项目。我的“Transformer.UnpackTask”方法采用我加载的任务实体,然后将其转换为不同的对象,该对象通过业务/服务层上升到 UI。
但是,一旦我的 Unpacker 函数尝试引用一个相关对象的项目(例如,一个任务有一个“AssignedPerson”,它有一个带有人员详细信息的 Person 实体。但是我的实体的 AssignedPerson 属性为 NULL。我想它将加载相关项目。
我是不是误会了?