Отладчик Visual Studio 2010 ничего не делает для проекта WCF - PullRequest
0 голосов
/ 29 января 2011

У меня есть веб-служба WCF (с использованием .NET 3.5), которую я пытаюсь отладить.Однако всякий раз, когда я устанавливаю какие-либо точки останова в программе, они никогда не попадают в режим работы в режиме отладки.Кроме того, Visual Studio не обнаруживает никаких исключений - обычно, когда во время отладки выдается необработанное исключение, Visual Studio покажет выбрасываемое исключение и переместит вас на строку кода, где было сгенерировано исключение.Кто-нибудь может пролить свет на этот вопрос?

Ответы [ 2 ]

0 голосов
/ 01 апреля 2015

Я очень опоздал с этим ответом, но, возможно, он поможет кому-то еще. Эта проблема может возникнуть при отладке веб-службы, которая использует локальный IIS вместо сервера разработки Visual Studio.

В этом случае необходимо подключиться к работающему экземпляру IIS, а не просто нажать «Выполнить». Для этого нажмите Отладка => Присоединить к процессу. Затем выберите «w3wp.exe». Наконец, выберите «Присоединить», и все должно быть готово.

enter image description here

0 голосов
/ 29 января 2011

Возможно, вы пытаетесь удаленно отладить службу? В этом случае вам также необходимо запустить VS Remote Debugger на удаленном компьютере.

Кроме того, вы должны установить поведение отладки службы в своем коде, чтобы получить подробную информацию об исключениях, например:

ServiceHost MyServiceHost = new ServiceHost(myService, myBaseAddress);

#if CONFIG = "Debug"
//set Service Debug Behavior (for security should not be enabled during deployment)
Description.ServiceDebugBehavior sdb = MyServiceHost.Description.Behaviors.Find<Description.ServiceDebugBehavior>();
if (sdb == null) {
sdb = new Description.ServiceDebugBehavior();
MyServiceHost.Description.Behaviors.Add(sdb);
}
sdb.IncludeExceptionDetailInFaults = true;
#endif

MyServiceHost.AddServiceEndpoint(typeof(IMyService), new NetTcpBinding(), myBaseAddress);
MyServiceHost.Open();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...