我正在研究一个项目的EF。最近,感谢Slauma和Mark Oreta,我已经解决了我无法达到对象关系并收到错误The ObjectContext instance has been disposed and can no longer be used for operations that require a connection.
detailed post is here。
我有一个非常类似的问题,无法通过INCLUDE解决它。我想达成关系与PRODUCT实体的关系。我不知道这是否可行,但我可以在调试和INSIDE using (var Context = base.Entities)
时达到它。但是在这个街区之外怎么样?这是代码。
using (var Context = base.Entities)
{
return Context.Product
.Include("Product_Attribute")
.Include("Product_AttributeType")
.Include("Product_AttributeType_Title")
.Include("Product_AttributeValueUnit")
}
我 CAN 到达外面的Product_Attribute实体,但当我尝试获取其他实体 OF Product_Attribute 时,我
指定的包含路径无效。 EntityType 'NoxonModel.Product'没有声明导航属性 名称'Product_AttributeType'
错误实际上是有道理的。如何解决这个问题并将PRODUCT实体置于区块之外,仍然可以访问其他相关表格?
这是数据库,非常感谢您提前:
答案 0 :(得分:2)
您可以通过提供由.
分隔的导航属性名称来急切加载导航属性。
using (var Context = base.Entities)
{
return Context.Product
.Include("Product_Attribute")
.Include("Product_Attribute.Product_AttributeType")
.Include("Product_Attribute.Product_AttributeType.Product_AttributeType_Title")
.Include("Product_Attribute.Product_AttributeType.Product_AttributeValueUnit")
}