Я занят созданием приложения для обновления программного обеспечения на C#, WinForms, .NET 3.5, где у меня есть набор подключаемых классов задач с общим базовым классом. Я хотел бы, чтобы одна задача, обновление базы данных, начала транзакцию, а другая задача, обновление веб-сайта, чтобы зафиксировать или откатить ту же транзакцию, чтобы веб-сайт и БД всегда были синхронизированы.
Я смутно припоминаю вещи из моих дней VB6, когда метод COM+ мог присоединиться к транзакции, если она уже была запущена, или начать ее, если нет, и т. д. У меня также есть смутные воспоминания об этом переносе на .NET Enterprise Services, но это также было пока назад.
Какие современные технологии можно использовать для достижения этой цели?