如何在EF 7中构建父子项

时间:2016-02-04 21:00:36

标签: entity-framework

我的表格如下所示:

public class ServiceType
{
    public int Id { get; set; }
    public string Code { get; set; }
    public string Name { get; set; }
}

服务类型数据具有另一个“子类型”集合,它们基本上是ServiceType.Code的集合。我想构建一个引用ServiceType集合的导航属性。

所以我猜我需要构建另一个表来存储父和孩子的Id,如:

public class ServiceTypeHeirarchy
{
    public int Id { get; set; }
    public int ParentId { get; set; }  // ServiceType.Id of Parent
    public int ChildId { get; set; }   // ServiceType.Id of Child
}

不确定我是否走在正确的轨道上。

1 个答案:

答案 0 :(得分:0)

您似乎希望在一个父母的ServiceType下有许多' ServiceType

如果确实如此,那么你可以做以下事情:

public class ServiceType
{
    public int Id { get; set; }

    public int? ParentServiceTypeId { get; set; }
    public ServiceType ParentServiceType { get; set; }

    public string Code { get; set; }
    public string Name { get; set; }

    public ICollection<ServiceType> ChildServiceTypes { get; set; }

}

然后您可能希望使用HasManyWithOptional进行实体配置。