ado.net实体框架删除行

Tri*_*ack 6 c# asp.net-mvc ado.net

我可能完全是盲目和愚蠢的,但我找不到ADO.NET实体数据模型生成的任何方法,它会以某种方式从我的表中删除行.我不想创建自定义查询.那我该怎么做?请帮忙.

我没有DeleteOnSubmit的方法......不知道为什么.这是我想要使用的代码.

var deleteOrderDetails =
from details in db.OrderDetails
where details.OrderID == 11000
select details;

foreach (var detail in deleteOrderDetails)
{
db.OrderDetails.DeleteOnSubmit(detail);
}

db.SubmitChanges();
Run Code Online (Sandbox Code Playgroud)

Dan*_*ott 10

需要进行一些改动:

db.DeleteObject(detail);
Run Code Online (Sandbox Code Playgroud)

db.SaveChanges();
Run Code Online (Sandbox Code Playgroud)

善良,

PS:您是否一直使用Linq to SQL然后交换到实体框架?


rom*_*n m 5

这是另一种方式(感谢这个答案)

我假设你有Orders桌子,并OrderDetails通过它与它相关OrderID.

var order = db.Orders.FirstOrDefault(o=> o.OrderID == 11000);
if(order != null)
{
  order.OrderDetails.Clear();
  db.SaveChanges();
}
Run Code Online (Sandbox Code Playgroud)

这应删除与该订单关联的所有订单详细信息.

编辑:修复代码