Есть таблица в бд, в ней есть дерево объектов. При попытке добавить запись выдает "нарушение ограничений внешнего ключа". Когда добавляешь вручную все нормально
Часть модельки
public int? ParentId { get; set; }
public Good Parent { get; set; }
public virtual ICollection<Good> LinkedGoods { get; set; }
builder.Entity<Good>().HasOne(x => x.Parent).WithMany(x => x.LinkedGoods).HasForeignKey(x => x.ParentId).OnDelete(DeleteBehavior.SetNull);
Сначала создаю главный объект, сохраняю и передаю сюда его Id и кол-во дочерних товаров
private async Task<OkResult> CreateLinkedItems(int parentId,int linkQuantity)
{
var good = await _db.Goods.FindAsync(parentId);
good.Id = 0;
for (int i = 0; i < linkQuantity; i++)
{
(var code, var number) = GetCode(good.CategoryId, good.HasDefects);
good.Code = code;
good.Number = number;
good.ParentId = good.Id;
_db.Goods.Add(good);
_db.SaveChanges();
}
return Ok();
}
P.S данные проверял вручную, ошибка именно в ParentId