如何使用LINQ在不循环的情况下删除实体框架中的多条记录?

发布于 2024-09-02 22:19:05 字数 85 浏览 7 评论 0原文

我想删除实体框架中的多条记录,而不使用 for 循环或使用 LINQ 的任何其他循环。我们可以在 SQL 中做到这一点,有没有办法在实体框架中删除多条记录?

I want to delete multiple records in entity framework without using a for loop or any other loop using LINQ. Something that we can do it in SQL is there any way to delete multiple records in entity framework?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

别靠近我心 2024-09-09 22:19:05

使用实体框架不支持您想要做的事情。实体框架需要将对象加载到内存中,然后才能删除它。这样它就可以进行乐观并发检查。

如果您确实需要此操作,则必须使用纯 SQL 或更好的存储过程来完成此操作。您可以使用实体框架调用存储过程。

What you want to do is not supported using Entity Framework. Entity Framework needs to load an object into memory, before you can delete it. This way it can do its optimistic concurrency checks.

If you really need this, you will have to do this with pure SQL or better, use a stored procedure. You can call your stored procedure with Entity Framework.

一指流沙 2024-09-09 22:19:05
using (var context = new DatabaseEntities())
{
    context.ExecuteStoreCommand("DELETE FROM YOURTABLE WHERE CustomerID = {0}", customerId);
}
using (var context = new DatabaseEntities())
{
    context.ExecuteStoreCommand("DELETE FROM YOURTABLE WHERE CustomerID = {0}", customerId);
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文