ado.net entity framework удалить строки
Я могу быть полностью слепым и глупым, но я не могу найти никакого метода, сгенерированного 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();
2 ответов
требуется несколько изменений:
db.DeleteObject(detail);
и
db.SaveChanges();
доброжелательность,
Дэн
PS: вы использовали Linq to SQL, а затем переключились на Entity Framework?
вот еще один способ (спасибо ответ)
Я полагаю, у вас есть Orders
таблица, и OrderDetails
связано с ним через OrderID
.
var order = db.Orders.FirstOrDefault(o=> o.OrderID == 11000);
if(order != null)
{
order.OrderDetails.Clear();
db.SaveChanges();
}
это должно удалить все детали заказа, связанные с этим заказом.
edit: исправлен код