ServiceStack OrmLite 和事务

Bri*_*ice 5 sql-server transactions ormlite-servicestack

我正在尝试使用 ServiceStack OrmLite 在事务内执行 sql。下面的代码适用于 Sqlite,但不适用于 SqlServer。使用 SqlServer 我收到以下错误:

当分配给命令的连接处于挂起的本地事务中时,ExecuteScalar 要求该命令具有事务。命令的 Transaction 属性尚未初始化。

这段代码有问题吗?

using (var trans = Db.BeginTransaction())
{
    try
    {
        foreach (myObject in myObjects)
            Db.Insert<MyObject>(myObject);
        trans.Commit();
    }
    catch (Exception ex)
    {
        trans.Rollback();
        throw ex;
    }
}
Run Code Online (Sandbox Code Playgroud)

Bri*_*ice 2

其他人将此答案放在评论中然后将其删除......所以:

BeginTransaction需要是OpenTransaction