Compartilhar via


Limitações de depuração do WCF

Este tópico se aplica a:

Edição

Visual Basic

C#

C++

Desenvolvedores Web

Express

Padrão

PRO e equipe

Legenda de tabela:

Aplica-se

Não é aplicada

Comando ou comandos oculta por padrão.

Há três maneiras que você pode começar a depuração de um serviço WCF:

  • Você está depuração um processo de cliente que chama um serviço.As etapas de depurador no serviço.O serviço não precisa estar na mesma solução sistema autônomo seu aplicativo cliente.

  • Você está depuração um processo de cliente faz uma solicitação para um serviço.O serviço deve ser parte de sua solução.

  • Usar Anexar ao processo para anexar a um serviço que está sendo executado.Depuração começa dentro do serviço.

Este tópico descreve as limitações nesses cenários.

Limitações na revisão em um serviço

Para a etapa em um serviço a partir de aplicativos cliente, que você está depuração, as seguintes condições devem ser atendidas:

  • O cliente deve telefonar o serviço usando um objeto cliente síncrono.

  • A operação de contrato não pode ser unidirecional.

  • Se o servidor for assíncrono, não é possível exibir a pilha de chamadas completa durante a execução do código dentro do serviço.

  • Depuração deve ser ativada com o seguinte código no arquivo app.config ou Web. arquivo de configuração:

    <system.web>
      <compilation debug="true" />
    <system.web>
    

    Este código só deve ser adicionado a uma vez.Você pode adicionar esse código, editando a. arquivo de configuração ou anexando-se ao serviço usando Anexar ao processo.Quando você usa Anexar ao processo em um serviço, o código de depurar é automaticamente adicionado à. arquivo de configuração.Depois disso, você pode depurar e passar para o serviço sem precisar edição o arquivo .config.

Limitações de revisão de um serviço

Revisão de um serviço e para o cliente tem as mesmas limitações descritas para depuração em um serviço.Além disso, o depurador deve ser anexado ao cliente.Se você está depurando uma etapa em um serviço de cliente e, o depurador permanece anexado ao serviço.Isso é verdadeiro se você iniciou o cliente usando Iniciar a depuração ou anexado ao cliente por meio de Anexar ao processo.Se você começou a depuração com anexação ao serviço, o depurador não está ainda anexado ao cliente.Nesse caso, se você tem para a etapa do serviço e ao cliente, primeiro você deve usar Anexar ao processo para anexar manualmente ao cliente.

Limitações de automático anexar a um serviço

Anexar automaticamente a um serviço tem as seguintes limitações:

  • O serviço deve ser parte do Visual Studio solução que você está depurando.

  • O serviço deve ser hospedado.Pode ser parte de um projeto de site (sistema de arquivos e HTTP), projeto de aplicativo Web (HTTP e arquivo System) ou projeto WCF serviço biblioteca.Projetos do WCF Service biblioteca podem ser Service bibliotecas ou bibliotecas de serviço de fluxo de trabalho.

  • O serviço deve ser chamado a partir de um cliente WCF.

  • Depuração deve ser ativada com o seguinte código no arquivo app.config ou Web. arquivo de configuração:

    <system.web>
      <compilation debug="true" />
    <system.web>
    

Self-Hosting

A serviço de hospedagem interna é um serviço WCF que não é executado dentro de IIS, o WCF Service Host ou o ASP.NET Servidor de desenvolvimento. Para obter informações sobre como depurar um serviço de hospedagem interna, consulte Como: Depurar um serviço WCF Self-Hosted.

Consulte também

Tarefas

Como: Depurar um serviço WCF Self-Hosted

Outros recursos

Depuração de serviços WCF