【发布时间】:2019-02-14 00:52:36
【问题描述】:
以这些示例类为例:
class TemplatePart
{
public PartStock stock {get; set;}
...other POCOs
}
class PartStock
{
public Part part {get; set;}
...other POCOs
}
class Part
{
public PartName name {get; set;}
...other POCOs
}
现在,假设我已经有一个TemplatePart 的实体。我可以这样做:
var entry = context.Entry(templatePart);
entry.Reference(x => x.PartStock).Load();
这将加载PartStock 的导航属性。但是我该怎么做:
entry.Reference(x => x.PartStock.Part).Load();
这会产生异常:
表达式“x => x.PartStock.Part”不是有效的属性 表达。该表达式应该表示一个简单的属性访问: 't => t.MyProperty'。参数名称:propertyAccessExpression
是否有一些替代方案仍然使用我已经拥有的entry?如果不需要的话,我不想再次使用 Include 重新加载整个内容。
我正在使用 EntityFramework Core 2。
【问题讨论】: