TransactionScope
предоставляет функциональность для преобразования набора операций в транзакцию, чтобы либо все они были выполнены успешно, либо ни одного.Мой вопрос: применяется ли область транзакций к определенным типам операций (например, только к соединениям SQL, Azure и т. Д.)?
Например, рассмотрим блок кода ниже
using (TransactionScope scope = new TransactionScope())
{
SaveToSQLserver(parameter);
SaveToSalesForce(parameter);
SaveToSAP(parameter);
SaveToAzure(parameter);
scope.Complete();
}
.ошибка возникает в SaveToSAP
, где она уже сохранена в Salesforce;как транзакция будет откатана от Salesforce?И если все в памяти, то как оно будет гарантировать, что, когда оно действительно спасет, оно будет успешным?