gpt4 book ai didi

.net - 使用 LINQ 进行多次删除(更具体地说是 Linq2Nhibernate,但是...)

转载 作者:行者123 更新时间:2023-12-04 07:12:01 24 4
gpt4 key购买 nike

有什么聪明的方法可以做到这一点吗?

如果使用 Linq2Nhibernate ,你好像真的要靠HQL或者喜欢从数据库中进行多次删除(不加载和删除一个一个)?

好像不是Linq2Sql有吗?我只想要一些可以做的事情:

DELETE FROM Accounts WHERE amount < 1000

有任何想法吗?

最佳答案

简短的回答是:你不能。

您可以执行以下操作:

var q = from account in dataContext.Accounts
where account.amount < 1000
select account;

dataContext.DeleteAllOnSubmit(q);

但是,因为框架需要跟踪并发问题,它总是会执行单独的删除(所以如果你有 500 行要删除,它会发送 500 条删除语句)

有关更长的版本和解决方案,请参阅: http://www.aneyfamily.com/terryandann/post/2008/04/Batch-Updates-and-Deletes-with-LINQ-to-SQL.aspx

关于.net - 使用 LINQ 进行多次删除(更具体地说是 Linq2Nhibernate,但是...),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/194521/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com