MSDTC и распределенные вычисления - PullRequest
0 голосов
/ 16 августа 2011

Несмотря на то, что существуют различные статьи по MSDTC, я не могу найти подробного объяснения MSDTC, чтобы выяснить, как мне нужно настроить его для моего конкретного сценария.

Вот мой сценарий.У меня есть несколько служб WCF, которые работают на блоке A, SQL-сервер работает на блоке B, и тестовое решение на блоке C. В моих тестах (блок C) я в значительной степени вызываю несколько сервисов (блок B), делая некоторую работу, которая в конечном итоге пишет в базу данных.Когда я запускаю эти тесты, используя базу данных SQL на том же блоке, что и тесты (блок C), все работает отлично, и все довольны.Однако после того, как я просто изменил тестовое решение, чтобы оно указывало на базу данных SQL-сервера на блоке B, я получил исключение:

Доступ к сети для диспетчера распределенных транзакций (MSDTC) отключен.Включите DTC для доступа к сети в конфигурации безопасности для MSDTC с помощью инструмента администрирования служб компонентов.

Один из вопросов, которые у меня возникли, заключается в том, что у меня не включен MSDTC в тестовом окне (блок C), так почемуэто исключение не выдается, когда я запускаю тесты здесь с базой данных здесь локально?И если мне нужно включить MSDTC, нужно ли включать его для всех трех блоков (ABC)?

Спасибо!

1 Ответ

2 голосов
/ 16 августа 2011

MSDTC включен по умолчанию, но доступ к сети отключен.

Так что, когда вы разговариваете через кросс-машину, она выходит из строя.

Вам нужно будет включить сеть. Смотрите эту статью.

http://technet.microsoft.com/en-us/library/cc753510%28WS.10%29.aspx

У меня была такая же проблема неделю назад или около того, и она исправила ее для меня.

...