【发布时间】:2012-02-22 10:00:07
【问题描述】:
我正在使用 Northwind 示例数据库。我有这个代码:
var db = new NorthwindEntities();
int id = 2; // Example
var delObject = (from o in db.Orders.Include("Order_Details")
where o.OrderID == id
select o).First();
db.Orders.DeleteObject(delObject);
db.SaveChanges();
我在订单 - 订单详情中有一个(一对多)关联,级联删除。 (如果我删除一个Order,所有具有相同OrderID的Order_Details都会被删除)。
我启用了延迟加载。
如果我删除 from 子句中的.Include("Order_Details"),级联删除将不起作用。
为什么会这样?延迟初始化不应该为我“包含” Order_Details,并最终让我级联删除吗?
【问题讨论】:
-
不。根据我的经验,级联删除仅适用于内存对象。
标签: c# entity-framework lazy-loading cascading-deletes