Поделиться через


Ограничения на отладку 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

Другие ресурсы

Отладка служб WCF