Ограничения на отладку WCF
Обновлен: Ноябрь 2007
Этот раздел применим для следующих версий.
Выпуск |
Visual Basic |
C# |
C++ |
Web Developer |
---|---|---|---|---|
Экспресс-выпуск |
||||
Standard |
||||
Pro и Team |
Условные обозначения:
Применимо |
|
Неприменимо |
|
Команда или команды по умолчанию скрыты. |
Существует три способа для начала отладки службы 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.
См. также
Задачи
Практическое руководство. Отладка резидентной службы WCF