作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个名为地址的实体。 Address 包含一个复杂类型,称为 House。房屋包含对其居住者的引用。占用者是一个实体。
public class Address {
[key]
public int Id { get; set; }
public House House { get; set; }
}
房子:
[ComplexType]
public class House
{
[Required]
public string HouseType { get; set; }
public IList<Occupant> Occupants { get; set; }
}
乘员
public class Occupant
{
[key]
public int Id { get; set; }
[Required]
public string Name { get; set; }
public virtual Address Address { get; set; }
}
如果我使用延迟加载,一切正常,我可以访问所有属性。但是,我需要使用 EagerLoading,因为在处理 Context 很久之后还需要实体。
我已尝试使用此代码包含属性:
// DbSet is of type DbSet<Address>
List<Address> eagerLoadedEntity = DbSet.Where(a => a.Address.StartsWith("a"))
.Include(a => a.House.Occupants).ToList();
我收到以下错误:
A specified Include path is not valid. The EntityType 'Address' does not declare a navigation property with the name 'House'.
最佳答案
也许根本不可能? MSDN Complex Types
Complex types cannot participate in associations and cannot contain navigation properties.
您在“Include”语句中将“Occupants”视为“House”的导航属性,我想这可能是问题所在。
关于c# - 复杂类型引用的 EagerLoad 实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33540286/
我有一个名为地址的实体。 Address 包含一个复杂类型,称为 House。房屋包含对其居住者的引用。占用者是一个实体。 public class Address { [key] p
我是一名优秀的程序员,十分优秀!