标签:检查 外键 remove 关联 set this 上下 其他 delete
前几天我在使用ef删除数据的时候遇到一个问题
通过删除功能删除一个实体时,发现一个问题
public bool Delete(T t) { this._dbContext.Set<T>().Attach(t);//必须将给定实体附加到集的基础上下文中。也就是说,将实体以“未更改”的状态放置到上下文中,就好像从数据库读取了该实体一样。 this._dbContext.Set<T>().Remove(t); //this._dbContext.Entry<T>(t).State = EntityState.Deleted; return this._dbContext.SaveChanges()>0; }
在代码执行到return时,直接返回页面,savechanges不返回任何值后直接跳转
后来在页面中检查发现,是表字段关联之后,如果需要删除一个实体时,那么在该实体对应的其他表已绑定联系的字段或实体必须先被删除
这个因素通常是设立了表字段外键联系后删除发生的!
EF执行savechanges失败然后直接返回页面的处理办法
标签:检查 外键 remove 关联 set this 上下 其他 delete
原文地址:https://www.cnblogs.com/sandaman2019/p/11273395.html