使用此处描述的方法,我正在尝试删除父记录和所有关联的子记录。但是,发生的情况是父项按预期删除,但子记录键字段更新为 NULL 而不是被删除。
我还将子表外键的Delete Rule设置为Cascade,在SQL Server Management中从父表中删除按预期执行了级联删除。
我首先遵循这个演练,并修改代码以执行删除。
这是代码:
using (var db = new ProductContext())
{
var food = db.Categories.Find("FOOD");
((IObjectContextAdapter)db).ObjectContext.LoadProperty(food, f => f.Products);
db.Categories.Remove(food);
int recordsAffected = db.SaveChanges();
有什么我想念的吗?还是孤儿记录了预期的结果?