Если в строке подключения установлено значение true, следующий код работает нормально.Если его отключить не удастся с помощью: «MSDC недоступен».
Является ли просто удачей, что оба DataContext выбирают одно и то же соединение из пула при включенном пуле или существует какая-то координация, выполняемая TransactionScope
?
using(var scope = new TransactionScope())
{
using(var db = new DataContext(connectionString))
{
//Do stuff
}
using(var db = new DataContext(connectionString))
{
//Do stuff
}
scope.Complete();
}
В моем реальном коде в настоящее время я не могу передать конкретное соединение в DataContext, но использую строку соединения.Также я хотел бы по возможности избегать использования координатора распределенных транзакций.