У меня есть таблица со ссылками на себя, и я использую структуру сущностей для ее определения.
public class Table
{
public int Id { get; set; }
public Table Parent { get; set; }
[ForeignKey(nameof(Parent))]
public int? ParentId { get; set; }
public virtual ICollection<Table> Children { get; set; } = new List<Table>();
}
Используя только EF, я могу определить, когда добавляю новое отношение, что есть цикл.Например, с данными:
- Элемент 1
- Элемент 2
- Элемент 4
- Item 5
Когда я пытаюсь добавить Item 1 в Item 3, я должен определить, что цикл будет создан.