Код представляет собой небольшой масштаб моей проблемы:
public class Category
{
public Guid CategoryID { get; set; }
public string Name { get; set; }
public Guid? ParentID { get; set; }
public bool IsTop { get; set; }
public string Description { get; set; }
public virtual Category parentCategory { get; set; }
}
Когда я использую этот класс в Entity Framework, он генерирует только одно отношение родительской и дочерней категорий.
Как я могу указать семантически разделить свойства и сгенерировать два разных отношения в SQL Server: одно для получения всех дочерних категорий с (дочернее отношение дочерних элементов (рекурсивно сверху вниз)), а другое - для получения всех родительских категорий ( родительский элемент родительского (рекурсивный снизу вверх))? Примерно так:
public virtual ICollection<Category> childCategories { get; set;}
public virtual ICollection<Category> parentCategories { get; set;}
Я пробовал это с modelBuilder, но оттуда я могу получить только один уровень детализации.