.net - 尝试删除多个对象时NHibernate TooManyRowsAffectedException

标签 .net oracle asp.net-mvc-3 nhibernate

基本上,我在尝试使用 nHibernate 删除实体集合时遇到此异常。下面是我的代码

   public void DeleteAll<T>(IList<T> entities)
   {
      using(var tx = session.BeginTransaction())
      { 
        try
        {
             entities.ForEach(e=>session.Delete(e));
             tx.Commit(); 
        }
        catch(Exception)
        {
             tx.Rollback();
        }
      }
   }

使用 hql 没有任何问题,但我更愿意坚持使用 LINQish 方法。哦,我正在连接到 Oracle 数据库。

最佳答案

您不能通过 foreach 删除项目,尝试 for 并小心 for 的索引,在删除 set 索引后 -

关于.net - 尝试删除多个对象时NHibernate TooManyRowsAffectedException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7708426/

相关文章:

c# - 在 C# 中,启动时,有没有办法强制 JIT 编译器接触整个应用程序中的所有 MSIL 代码?

Java 忽略类路径

asp.net-mvc-3 - 服务器2008年global.asax MVC 3.0问题中的错误处理

c# - 不知道为什么 C# PowerShell Runspace 不定期关闭

c# - 在 .NET 中进行定时回调的最简单方法是什么?

c# - 在 System.ConsoleKey 值使用完毕后,如何使它无效(或分配另一个值)?

oracle - 如何在oracle中创建xml

c# - ASP.net 中的个性化配置文件 URL

c# - 使用 Javascript 过滤 GridView

Oracle:非池连接和 DRCP 之间的区别