Ограничения на отладку WCF
Существует три способа для начала отладки службы WCF:
Отладка клиентского процесса, который вызывает службу.Отладчик выполняет пошаговую отладку службы.Служба не обязательно должна быть в том же решении, в котором находится клиентское приложение.
Отладка клиентского процесса, который отправляет запрос службе.Служба должна быть частью решения.
Использование диалогового окна Присоединение к процессу, чтобы присоединить текущую запущенную службу.Отладка начинается в службе.
В этом разделе описаны ограничения на применение этих скриптов.
Ограничения на пошаговую отладку службы
Чтобы выполнить пошаговую отладку службы в клиентском приложении, для которого выполняется отладка, необходимо соблюдать следующие условия:
Служба должна вызываться клиентом с помощью синхронного клиентского объекта.
Операция контракта не может быть односторонней.
Если сервер асинхронный, то при выполнении кода в службе невозможно просмотреть полный стек вызовов.
Отладка должна быть включена с помощью следующего кода в файле app.config или Web.config:
<system.web> <compilation debug="true" /> </system.web>
Этот код необходимо добавить только один раз.Можно добавить этот код с помощью изменения CONFIG-файла или присоединения к службе с помощью диалогового окна Присоединение к процессу.При использовании диалогового окна Присоединение к процессу код отладки автоматически добавляется к CONFIG-файлу.После этого можно выполнить отладку и пошаговую отладку службы без изменения CONFIG-файла.
Ограничения на выход из пошаговой отладки службы
На выход из пошаговой отладки службы и возвращение к клиенту налагаются такие же ограничения, как и для пошаговой отладки службы.Кроме того, отладчик должен быть присоединен к клиенту.При отладке клиента и пошаговой отладке службы отладчик остается присоединенным к службе.Это справедливо как в том случае, если клиент запущен с помощью команды Начать отладку, так и если присоединение к клиенту было выполнено с помощью диалогового окна Присоединение к процессу.Если отладка начинается с помощью присоединения к службе, то отладчик не присоединен к клиенту.В таком случае при необходимости выхода из пошаговой отладки службы и возвращения к клиенту, необходимо сначала использовать диалоговое окно Присоединение к процессу, чтобы присоединиться к клиенту вручную.
Ограничения на автоматическое присоединение к службе
Автоматическое присоединение к службе имеет следующие ограничения:
Служба должна быть частью решения Visual Studio, для которого выполняется отладка.
Служба должна быть размещена.Эта служба может быть частью проекта веб-узла (файловая система или HTTP), проекта веб-приложения (файловая система или HTTP) или проекта библиотеки службы WCF.Проекты библиотеки службы WCF могут быть либо библиотеками службы, либо библиотеками службы бизнес-процессов.
Служба должна вызываться из клиента WCF.
Отладка должна быть включена с помощью следующего кода в файле app.config или Web.config:
<system.web> <compilation debug="true" /> <system.web>
Резидентное размещение
Резидентная служба является службой WCF, которая не запускается внутри IIS, узла службы WCF, или сервера разработки ASP.NET.Дополнительные сведения об отладке резидентной службы см. в разделе Практическое руководство. Отладка резидентной службы WCF.
Резидентное размещение
Чтобы включить отладку приложений ASP.NET версии 3.0 или 3.5, следует установить ASP.NET версии 3.0 или 3.5 до установки Visual Studio 2010.Если Visual Studio 2010 установлен до ASP.NET версии 3.0 или 3.5, то при попытке отладки приложения ASP.NET 3.0 или 3.5 возникает ошибка.Сообщение об ошибке "Не удалось автоматически перейти на сервер". Для того чтобы исправить эту неполадку, откройте Панель управления Windows и воспользуйтесь приложением Программы и компоненты для восстановления установки Visual Studio 2010.
См. также
Задачи
Практическое руководство. Отладка резидентной службы WCF