Вложенность в сущности Entity framework
Подскажите пожалуйста, можно ли реализовать вложенность в сущности EF.
У меня есть простая модель, не понимаю как ее связать саму с собой:
public class Departament
{
public int Id { get; set; }
public int ParentId { get; set; }
public string Name { get; set; }
}
У кого ParentId == 0 => группа.
Если ParantId != 0 значит этот элемент входит в группу.

Вот не знаю как реализовать связь, чтобы при получении сущности из бд, подтягивался дочерний список...
Буду рад если направите по правильному пути)
P.S Использую EF Core 3.1
Ответы (2 шт):
Автор решения: Sergey Filippov
→ Ссылка
Реализовал вот так:
public class Departament
{
public int Id { get; set; }
public string Name { get; set; }
public Departament Parent { get; set; }
public int? ParentId { get; set; }
public ICollection<Departament> SubDepartaments { get; } = new List<Departament>();
}
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<Departament>(entity =>
{
entity.HasKey(x => x.Id);
entity.Property(x => x.Name);
entity.HasOne(x => x.Parent)
.WithMany(x => x.SubDepartaments)
.HasForeignKey(x => x.ParentId)
.IsRequired(false)
.OnDelete(DeleteBehavior.Restrict);
});
}