Есть ли способ отключить отладку службы WCF в VS 2010? - PullRequest
3 голосов
/ 30 ноября 2010

У меня есть приложение веб-формы ASP.NET, которое использует стороннюю службу через прокси службы WCF, которую я создал в Visual Studio 2010 с помощью команды Добавить ссылку на службу.

Я добавил несколько открытых методов в сгенерированный класс Client в отдельном частичном определении класса, чтобы они сохранялись, даже если я перегенерирую прокси. Эти методы - то, что вызывает остальная часть моего кода вместо прямого вызова прокси-методов, которые сопоставляются с вызовами API.

Проблема, с которой я сталкиваюсь, заключается в том, что мне нужно отладить методы, которые я добавил. Когда я помещаю точку останова в один из созданных мной методов, а затем пытаюсь выполнить пошаговый переход или переход в код, Visual Studio на некоторое время зависает, а затем возвращается со следующей ошибкой:

Невозможно автоматически войти на сервер. Не удалось подключиться к серверу компьютера «[адрес службы]». Отладчик не может подключиться к удаленному компьютеру. Это может быть связано с тем, что удаленный компьютер не существует или брандмауэр может препятствовать связи с удаленным компьютером. Пожалуйста, обратитесь за помощью к справке.

После возникновения этой ошибки Visual Studio автоматически выходит из метода, который я отлаживал, и не позволяет мне отлаживать код на стороне клиента.

Visual Studio пытается подключиться к удаленной сторонней службе, чтобы попытаться отладить ее. Однако я не могу контролировать эту службу и никогда не смогу позволить ей сделать это.

Есть ли способ сказать Visual Studio, чтобы он не пытался отлаживать этот удаленный сервис и просто отлаживал код на стороне клиента?

UPDATE

Я смотрел на код сгенерированного Клиента и увидел, что к нему применен атрибут DebuggerStepThroughAttribute, поэтому я предполагаю, что это объясняет проблему, с которой я столкнулся, не позволяя мне войти в код, но он все еще не не решает проблему предотвращения отладки VS удаленной службы.

1 Ответ

1 голос
/ 03 мая 2011

Я думаю, что Visual Studio теперь имеет встроенное поведение хоста службы WCF для проектов библиотеки WCF. Насколько я могу сказать, единственный способ отключить его - это изменить тип проекта обратно на обычную библиотеку. Вы можете сделать это, отредактировав .csproj вручную: удалите {349c5851-65df-11da-9384-00065b846f21} (и соответствующую точку с запятой) из <ProjectTypeGuids>.

...