【发布时间】:2018-10-22 18:21:31
【问题描述】:
我有一个自引用表,我正在使用实体框架来定义它。
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
- 项目 3
- 项目 4
- 第 5 项
- 项目 2
当我尝试将第 1 项添加到第 3 项时,我应该确定将创建一个循环。
【问题讨论】:
标签: c# entity-framework