我试图删除我的实体与它相关的实体,但实体框架不想这样做。EF核心不删除相关实体
下面是代码:
var tr = _context.Trees
.Include(x => x.Translation)
.FirstOrDefault(x => x.Id == 2);
_context.Remove(tr);
_context.SaveChanges();
语境:
modelBuilder.Entity<Tree>().ToTable("h_tree");
modelBuilder.Entity<Tree>().HasOne(x => x.Translation);
树类:
public class Tree
{
public int Id { get; set; }
public string Name { get; set; }
public virtual Translation Translation { get; set; }
}
任何人有任何想法,为什么相关的实体不能被删除?
翻译类:
public class Translation
{
public long Id { get; set; }
public string Pl { get; set; }
public string En { get; set; }
public string De { get; set; }
public string Cz { get; set; }
public string It { get; set; }
public string Ru { get; set; }
public string Fr { get; set; }
public Translation()
{
}
}
在数据集中是否真的有id = 2的记录? –
当然可以。这是EF日志: SET NOCOUNT ON; DELETE FROM [cat]。[h_tree] WHERE [id] = @ p0; SELECT @@ ROWCOUNT; – bielu000