如图:我的一个部门表有parentid来表示上级。efcore生成的数据表中会多一个departmentid字段。
我的实体类如下:
public class Department{ public string Id{get;set;} /// <summary> /// 部门名称 /// </summary> public string Name { get; set; } /// <summary> /// 备注说明 /// </summary> public string? Remark{ get; set; } /// <summary> /// 状态 /// </summary> public Core.Enums.ModelEnums.StatusEnum Status { get; set; } public int Sort { get; set; } public string? ParentId { get; set; } public Department? Parent { get; set; } public List<Department> Children { get; set; } public string? CreatorId { get; set; } public DateTime? CreatorDate { get; set; } public string? ModifyId { get; set; } public DateTime? ModifyDate { get; set; } }
请问大佬,为什么会出现这种情况啊,我要如何去解决 ?
可能与 Parent
属性有关,建议提供一下关系配置代码
是的,我之前设置了parent的删除关系,去掉那个就好了。谢谢大佬
找到问题了,有设置t.HasOne(a => a.Parent).WithMany().HasForeignKey(a => a.ParentId).OnDelete(DeleteBehavior.NoAction);去掉这个就行了