Мне нужно написать процесс, который должен обновить 2 идентичные таблицы, расположенные в 2 разных базах данных на серверах, которые географически разделены.
Мы не можем добавить один из серверов в качестве связанного сервера из-за некоторых соображений безопасности.
Требуется также, чтобы в случае сбоя любого из процессов обе транзакции были откатаны.Это все или ничего.После чтения документации в MSDN относительно TransactionScope
создается впечатление, что этот класс позаботится о вас для вас, но в документации есть некоторые нечеткие области, которые, я надеюсь, кто-то, имеющий опыт использования этого подхода, сможет уточнитьдля меня:
- В документации сказано, что вы можете подключиться к 2 различным базам данных или даже к сторонним СУБД, но не указано, должны ли серверы баз данных быть "связаны"
- Предполагая, что их не нужно связывать, вы можете примерно объяснить, как TransactionScope обрабатывает исключения и выполняет откат при возникновении ошибки?