我正在开发一个 Win 8 RT 应用程序,该应用程序必须将一些数据从 Web 服务合并到本地 SQLite 数据库,并且我已经实现了这种方法来仅在事务中更新数据库。
int result;
await MyDatabaseManager.Connection.RunInTransactionAsync(async (connection) =>
{
foreach (Hotel _hotel in listUpdates)
{
result = await connection.UpdateAsync(_hotel);
if (result == 0)
{
await MyDatabaseManager.Connection.InsertAsync(_hotel);
}
}
});
但是,我不知道为什么,当await connection.UpdateAsync(_hotel);
被调用时,它会破坏 for bucle,并退出函数而不抛出任何异常或返回任何错误。
如果我评论 RunInTransactionAsync 行,一切正常。
任何想法??
提前致谢。