Partilhar via


Passo a passo: criar um serviço WCF simples no Windows Forms do .NET Framework

Este passo a passo demonstra como criar um serviço WCF (Windows Communication Foundation) simples, testá-lo e acessá-lo de um aplicativo do Windows Forms do .NET Framework.

Observação

Seu computador pode mostrar diferentes nomes ou locais para alguns dos elementos de interface do usuário do Visual Studio neste artigo. Você pode estar usando outra edição do Visual Studio ou outras configurações de ambiente. Para obter mais informações, confira Personalizar o IDE.

Pré-requisitos

As ferramentas do WCF não são instaladas com a carga de trabalho do .NET. Use o Instalador do Visual Studio para modificar sua instalação. No instalador, escolha Windows Communication Foundation em Componentes Individuais. Consulte Modificar o Visual Studio.

Criar um serviço

  1. Abra o Visual Studio.

  2. Na tela Iniciar, selecione Criar um novo projeto.

  3. Digite biblioteca de serviços wcf na caixa de pesquisa na página Criar um projeto. Selecione o modelo C# ou Visual Basic para a Biblioteca de Serviços WCF e, em seguida, selecione Avançar.

    Criar projeto da Biblioteca de Serviços WCF no Visual Studio

    Dica

    Se não vir nenhum modelo, talvez você precise instalar o componente Windows Communication Foundation do Visual Studio. Escolha Instalar mais ferramentas e recursos para abrir o Instalador do Visual Studio. Escolha a guia Componentes individuais, role para baixo até Atividades de desenvolvimento e selecione Windows Communication Foundation. Clique em Modificar.

  4. Na página Configurar o novo projeto, clique em Criar.

    Observação

    Isso cria um serviço de trabalho que pode ser testado e acessado. As duas etapas a seguir demonstram como você pode modificar o método padrão para usar um tipo de dados diferente. Em um aplicativo real, você também adicionaria suas funções ao serviço.

  5. No Gerenciador de Soluções, clique duas vezes em IService1.vb ou IService1.cs.

    O arquivo IService1

    Localize a seguinte linha:

    [OperationContract]
    string GetData(int value);
    

Altere o tipo do parâmetro value para cadeia de caracteres:

[OperationContract]
string GetData(string value);

No código acima, observe o atributo OperationContract. Esse atributo é necessário para qualquer método exposto pelo serviço.

  1. No Gerenciador de Soluções, clique duas vezes em Service1.vb ou Service1.cs.

    O arquivo Service1

    Localize a seguinte linha:

    public string GetData(int value)
    {
        return string.Format("You entered: {0}", value);
    }
    

Altere o tipo do parâmetro value para cadeia de caracteres:

public string GetData(string value)
{
    return string.Format("You entered: {0}", value);
}

Teste o serviço

  1. Pressione F5 para executar o serviço. Um formulário do Cliente de Teste do WCF aparece e carrega o serviço.

  2. No formulário Cliente de Teste do WCF, clique duas vezes no método GetData() em IService1. A guia GetData é exibida.

    O método GetData()

  3. Na caixa Solicitação, selecione o campo Valor e digite Hello.

    O campo Valor

  4. Clique no botão Invocar. Se uma caixa de diálogo Aviso de Segurança for exibida, clique em OK. O resultado é exibido na caixa Resposta.

    O resultado na caixa Resposta

  5. No menu Arquivo, clique em Sair para fechar o formulário de teste.

Acessar o serviço

Referenciar o serviço WCF

  1. No menu Arquivo, aponte para Adicionar> e clique em Novo Projeto. Escolha o projeto Windows Forms App (.NET Framework).

  2. Clique com o botão direito no projeto e selecione Adicionar > Referência de Serviço. A caixa de diálogo Adicionar Referência de Serviço é exibida.

  3. Na caixa de diálogo Adicionar Referência de Serviço, clique em Descobrir.

    Captura de tela mostrando a caixa de diálogo Adicionar Referência de Serviço.

    Service1 é exibido no painel Serviços.

  4. Clique em OK para adicionar a referência de serviço.

Compilar um aplicativo cliente

  1. No Gerenciador de Soluções, clique duas vezes em Form1.vb ou Form1.cs para abrir o Designer de Formulários do Windows se ele ainda não estiver aberto.

  2. Abra a Caixa de Ferramentas clicando em Exibir>Caixa de Ferramentas (ou Ctrl+Alt+X no teclado).

  3. Na Caixa de Ferramentas, arraste um controle TextBox, um controle Label e um controle Button para o formulário.

    Captura de tela mostrando a adição de controles ao formulário.

  4. Clique duas vezes em Button e adicione o seguinte código ao manipulador de eventos Click:

    private void button1_Click(System.Object sender, System.EventArgs e)
    {
        ServiceReference1.Service1Client client = new
            ServiceReference1.Service1Client();
        string returnString;
    
        returnString = client.GetData(textBox1.Text);
        label1.Text = returnString;
    }
    
  5. Em Gerenciador de Soluções, clique com o botão direito do mouse no nó do projeto (por exemplo, WindowsFormsApp1) e clique em Definir como Projeto de Inicialização.

  6. Pressione F5 para executar o projeto. Insira algum texto e clique no botão. O rótulo exibe "Você inseriu:" e mostra o texto inserido.

    Captura de tela do formulário em execução mostrando o resultado.