azure webjobs中的TransactionScope

azure webjobs中的TransactionScope,azure,transactionscope,azure-webjobs,Azure,Transactionscope,Azure Webjobs,我有一个在azure中运行的webjob,它正在处理发送到事件中心的数据 在eventprocessor中,我想将信息保存到SQL server。为了确保所有内容都正确插入,我希望使用事务 当我在本地运行代码时,一切都很完美。但在Azure中运行时,不会发生任何事情,也不会抛出任何错误。 我所读到的应该可以使用TransactionScope。下面的示例代码不起作用 using (TransactionScope scope = new TransactionScope())

我有一个在azure中运行的webjob,它正在处理发送到事件中心的数据

在eventprocessor中,我想将信息保存到SQL server。为了确保所有内容都正确插入,我希望使用事务

当我在本地运行代码时,一切都很完美。但在Azure中运行时,不会发生任何事情,也不会抛出任何错误。 我所读到的应该可以使用TransactionScope。下面的示例代码不起作用

  using (TransactionScope scope = new TransactionScope())
                {
                    dataImportDao.StartProcessingMessage(mappedMessage);
                    scope.Complete();
                }

非常感谢您对如何解决此问题或我是否应该采用其他方法提出的任何建议。

代码是否在没有事务的情况下工作,以及StartProcessingMessage中的内容?是的,在没有事务范围的azure中工作。在本地与transactionscope一起工作。StartProcessingMessage是一种在SQL azure数据库中存储数据的方法。您只使用一个数据库还是多个数据库?如果只有一个,最好避免事务范围。当您有多个dbs时,它们都在云中吗?如果不支持您的场景:我在云中只有一个db。如果建议避免使用transactionscope,那么在一个事务中只更新1 db但更新多个表的最佳做法是什么?代码是否在没有事务的情况下工作,以及StartProcessingMessage中的内容是什么?是的,在没有transactionscope的azure中工作。在本地与transactionscope一起工作。StartProcessingMessage是一种在SQL azure数据库中存储数据的方法。您只使用一个数据库还是多个数据库?如果只有一个,最好避免事务范围。当您有多个dbs时,它们都在云中吗?如果不支持您的场景:我在云中只有一个db。如果建议避免使用transactionscope,那么在一个事务中只更新1db但更新多个表的最佳做法是什么。