如何在异步csharp-SQLite包装器中使用事务?

时间:2013-05-18 09:47:16

标签: c# sqlite

我在C#项目中使用csharp-SQLite包装器。

之前,我使用了相同的库,但使用了syncro函数而不是async。

我可以使用BeginTransaction。异步调用中不存在此功能。

如何使用异步调用启动和提交事务?

1 个答案:

答案 0 :(得分:4)

我在Stackoverflow中找到了它。该函数是RunInTransactionAsync:

await MyDatabaseManager.Connection.RunInTransactionAsync((SQLiteConnection connection) =>
{
  foreach (Hotel _hotel in listUpdates)
  {
    result = connection.Update(_hotel);

    if (result == 0)
    {
      connection.Insert(_hotel);
    }
  }
});