Как создать иерархию категорий?

Идея в том, что есть категория у неё есть подкатегория и у этой подкатегории есть ещё категория. Использую EF Core. Сделал следующий объект

public class Category : BaseEntity
{
    private readonly List<Category> _subcategories = new();

    private Category()
    {

    }

    public Category(string name)
    {
        if (string.IsNullOrWhiteSpace(name))
            throw new ArgumentNullException(nameof(name));

        Name = name;
    }

    public Category(string name, Category parentCategory) : this(name)
    {
        ParentCategory = parentCategory ??
                         throw new ArgumentNullException(nameof(parentCategory));
    }

    public string Name { get; private set; }

    public Category ParentCategory { get; private set; }

    public IReadOnlyCollection<Category> Subcategories => _subcategories.AsReadOnly();

    protected internal void AddSubcategory(Category subcategory)
    {
        if (subcategory == null)
            throw new ArgumentNullException(nameof(subcategory));

        _subcategories.Add(subcategory);
    }

    protected internal void UpdateName(string name)
    {
        if (string.IsNullOrWhiteSpace(name))
            throw new ArgumentNullException(nameof(name));

        Name = name;
    }

    protected internal void UpdateParentCategory(Category parentCategory)
    {
        ParentCategory = parentCategory ?? 
                         throw new ArgumentNullException(nameof(parentCategory));
    }
}

После создания миграции я получаю следующею таблицу

введите сюда описание изображения

И когда я получаю категорию с Id 8. В Subcategories я должен видеть категории под Id 9,10, но там только 9


Ответы (0 шт):