Passo a passo: Criando um serviço WCF simples no Windows Forms
Publicado: abril de 2016
Este passo a passo demonstra como criar um simples Windows Communication Foundation (WCF) de serviço, testá-lo e, em seguida, acessá-lo de um aplicativo Windows Forms.
Observação
Seu computador pode mostrar diferentes nomes ou locais para alguns dos elementos de interface do usuário do Visual Studio nas instruções a seguir. A edição do Visual Studio que você possui e as configurações que você usa determinam esses elementos. Para obter mais informações, confira Personalizando o IDE.
Criando o serviço
Para criar um serviço WCF
Sobre o arquivo aponte para novo e, em seguida, clique em projeto.
No novo projeto caixa de diálogo caixa, expanda o Visual Basic ou Visual C# nó e clique em WCF, seguido por WCF Service Library. Clique em OK para abrir o projeto.
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 poderia adicionar suas próprias funções para o serviço.
-
Em Solution Explorer, clique duas vezes em Iservice1 ou IService1. cs e localize a seguinte linha:
[OperationContract] string GetData(int value);
<OperationContract()> Function GetData(ByVal value As Integer) As String
Alterar o tipo para o
value
parâmetro paraString
:[OperationContract] string GetData(string value);
<OperationContract()> Function GetData(ByVal value As String) As String
No código acima, observe o
<OperationContract()>
ou[OperationContract]
atributos. Esses atributos são obrigatórios para qualquer método exposto pelo serviço. -
Em Solution Explorer, clique duas vezes em Service1. vb ou Service1. cs e localize a seguinte linha:
public string GetData(int value) { return string.Format("You entered: {0}", value); }
Public Function GetData(ByVal value As Integer) As String Implements IService1.GetData Return String.Format("You entered: {0}", value) End Function
Alterar o tipo para o parâmetro de valor para
String
:public string GetData(string value) { return string.Format("You entered: {0}", value); }
Public Function GetData(ByVal value As String) As String Implements IService1.GetData Return String.Format("You entered: {0}", value) End Function
O serviço de teste
Para testar um serviço WCF
Pressione F5 para executar o serviço. Um cliente de teste do WCF formulário será exibido e ele carregará o serviço.
No cliente de teste do WCF de formulário, clique duas vezes o GetData método sob IService1. O GetData guia será exibida.
No solicitação caixa, selecione a valor campo e digite
Hello
.Clique o Invoke botão. Se um Aviso de segurança caixa de diálogo for exibida, clique em OK. O resultado será exibido no resposta caixa.
Sobre o arquivo menu, clique em Exit para fechar o formulário de teste.
Acessando o serviço
Para fazer referência a um serviço WCF
Sobre o arquivo aponte para Add e, em seguida, clique em novo projeto.
No novo projeto caixa de diálogo caixa, expanda o Visual Basic ou Visual C# nó e selecione Windows, e, em seguida, selecione Windows Forms Application. Clique em OK para abrir o projeto.
Clique com botão direito WindowsApplication1 e clique em Add Service Reference. O Add Service Reference caixa de diálogo será exibida.
No Add Service Reference caixa de diálogo, clique em Discover.
Service1 será exibido no serviços painel.
Clique em OK para adicionar a referência de serviço.
Para criar um aplicativo cliente
Em Solution Explorer, clique duas vezes em Form1. vb ou Form1. CS para abrir o Designer de formulários do Windows, se ele não ainda estiver aberto.
Do Toolbox, arraste um
TextBox
controle, umLabel
controle e umButton
controle para o formulário.Clique duas vezes o
Button
, e adicione o seguinte código noClick
manipulador de eventos: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; }
Private Sub Button1_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button1.Click Dim client As New ServiceReference1.Service1Client Dim returnString As String returnString = client.GetData(TextBox1.Text) Label1.Text = returnString End Sub
Em Solution Explorer, clique com botão direito WindowsApplication1 e clique em Set as StartUp Project.
Pressione F5 para executar o projeto. Digite algum texto e clique no botão. Exibirá o rótulo "você digitou:" e o texto que você inseriu.
Consulte também
Serviços do Windows Communication Foundation e WCF Data Services no Visual Studio