Linq相关项目未加载

时间:2012-08-25 03:51:04

标签: linq entity-framework

我有一个"任务"表,有一个"子类别"。子类别与类别相关。一个类别有很多子类别,但我的任务项只存储了子类别id(该类别可以从中推断出来。)

所以,我的实体框架似乎理解这种关系。

但是,我的链接失败了。

public TaskObject GetTask(int taskId)
{
    var item = (from t in _te.tasks.Include("r_sub_category").Include("r_category").Include("r_priority").Include("r_state").Include("assigned_person").Include("create_person").Include("update_person") where t.task_id == taskId select t).FirstOrDefault();
    return Transformer.UnpackTask(item);
}

有一个r_category表和实体对象,但是当我运行它时,它告诉我:

指定的包含路径无效。 EntityType' taskerModel.task'不会声明名称为' r_category'的导航属性。

这是正确的 - r_category链接到我的r_sub_category表...而不是直接与任务相关联。有没有办法加载r_category?

或者,也许这个包含是懒惰的,我应该做某种加入自己?也许效率更高?

1 个答案:

答案 0 :(得分:0)

你需要用点表示法显示完整路径,所以我猜它会是

"r_sub_category.r_category". 

等等