NHibernate MySql事务不回滚

时间:2011-07-12 04:52:50

标签: mysql nhibernate

我正在使用带有MySql数据库的nhibernate。

除了回滚事务之外,大多数CRUD操作都按预期工作。以下代码就是我所拥有的;非常简单,创建一个实体,保存,然后回滚。

using (var tran = accountRepository.Session.BeginTransaction())
        {
            var newUser = new User();
            newUser.Username = "testuser1002";

            accountRepository.Session.Save(newUser);

            tran.Rollback();
        }

我的 SqlServer 配置中的代码产生预期结果,但是,它不适用于 MySql 配置。这两种配置几乎相同。

1 个答案:

答案 0 :(得分:2)

如果您需要交易,请确保您使用的是InnoDb存储引擎,而不是MyIsam。 article有一些很好的解释和建议。