Добрый день всем! Впервые работаю с иерархией в БД. Вообщем надо было организовать группу с иерархией. И создал следующий модель :
public class MyGroup
{
public int Id { get; set; }
public string Name { get; set; }
public string Description { get; set; }
public virtual List<MyGroup> Childrens { get; set; }
public virtual MyGroup Parent { get; set; }
}
Тут все правильно (пока не вижу проблем). Можно организовать иерархию. Но вот проблемы будет в случае если добавить в дочернюю группу родительскую. Этого можно избежать при добавлении проверить, та не является ли этот группа родителем для него. Но никак не могу понять как сделать проверку для тех которые находятся наверху от родительской группы текущего.