У меня есть обработчик сообщений, использующий NServiceBus, которому необходимо выполнять код SQL в двух разных базах данных. Строки подключения имеют разные исходные каталоги, но в остальном идентичны.
Когда сообщение получено, первое соединение sql открывается успешно, но второе соединение sql вызывает следующее исключение при вызове .Open.
Доступ к сети для диспетчера распределенных транзакций (MSDTC) отключен. Включите DTC для доступа к сети в конфигурации безопасности для MSDTC с помощью инструмента администрирования служб компонентов.
Мы не используем MSDTC.
Вот код, который не работает. Это не сработает на connB.Open ()
public void Handle(MyMsgCmd message)
{
using (SqlConnection connA = new SqlConnection(myConnectionStringA))
{
connA.Open();
}
using (SqlConnection connB = new SqlConnection(myConnectionStringB))
{
connB.Open();
}
}
Этот же код отлично работает при запуске из приложения командной строки или веб-приложения. Исключение возникает только тогда, когда оно вызывается из NServiceBus.
Каждое из этих соединений будет успешно открываться при открытии первым или при открытии само по себе, но всякий раз, когда присутствует второе соединение, второе соединение всегда не открывается с одним и тем же исключением, даже если оно заведомо исправно.
Требуется ли дополнительная настройка для последовательного открытия нескольких соединений с NServiceBus?