Entity framework 实体框架。包括在不同上下文中连接的加载表

Entity framework 实体框架。包括在不同上下文中连接的加载表,entity-framework,linq,c#-4.0,Entity Framework,Linq,C# 4.0,林克是新来的。我想知道我怎样才能做到这一点 我定义了以下表类: public partial class Cars { public long ID { get; set; } public string CarName { get; set; } public long CarModelID { get; set; } public virtual CarModel CarModel { get; set; } } public partial class

林克是新来的。我想知道我怎样才能做到这一点

我定义了以下表类:

public partial class Cars
{
    public long ID { get; set; }
    public string CarName { get; set; }
    public long CarModelID { get; set; }

    public virtual CarModel CarModel { get; set; }
}

public partial class CarModel
{
    public long ID { get; set; }
    public string ModelName { get; set; }
    public long StockID { get; set; }
}

public partial class Stock
{
    public long ID { get; set; }
    public string StockName { get; set; }
}
还有一个为Cars类定义的扩展(Cars.extension.cs):

这给了我一个错误:

“指定的包含路径无效。实体类型Cars未声明名为“StockList”的导航属性”


我将如何构造我的LINQ查询,使其可能包括基于
CarModel
Stocks
列表,基于
Cars

include
方法遵循FluentAPI原则,这意味着进一步的
include()
调用仍在父实体的上下文中(
Cars
)且不在先前包含的
CarModel

您需要的是:

Cars.Include("CarModel.StockList")

var query = (from cars in Context.Cars.Include("CarModel").Include("StockList")
                         select cars).FirstOrDefault();
Cars.Include("CarModel.StockList")
Cars.Include(x => x.CarModel.StockList)