Compartilhar via


Demonstra Passo a passo: Criando e acessando um serviço de dados do WCF no Visual Studio

Esta explicação passo a passo demonstra como criar uma simples WCF Data Services que está hospedado em um ASP.NET aplicativo Web e, em seguida, acessá-lo de um aplicativo Windows Forms.

Esta explicação passo a passo, você irá:

  • Criar um aplicativo da Web para hospedar uma WCF Data Services.

  • Criar um Modelo de Dados de Entidade que representa a tabela clientes no banco de dados Northwind.

  • Create a WCF Data Services.

  • Criar um aplicativo cliente e adicione uma referência a WCF Data Services.

  • Habilitar a ligação de dados para o serviço e gerar a interface do usuário.

  • Opcionalmente, adicione recursos de filtragem para o aplicativo.

Pré-requisitos

You need the following components to complete this walkthrough:

Criando o serviço

Para criar um WCF Data Services, você irá adicionar um projeto da Web, criar um Modelo de Dados de Entidadee então criar o serviço a partir do modelo.

Na primeira etapa, você irá adicionar um projeto da Web para hospedar o serviço.

ObservaçãoObservação

Seu computador pode mostrar nomes ou locais diferentes para alguns dos elementos da 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, consulte Configurações do Visual Studio.

Para criar o projeto da Web

  1. Sobre o Visual Studio arquivo menu, clique em Novo projeto.

  2. No Novo projeto caixa de diálogo caixa, expanda o Visual Basic ou Visual C# nó e clique em Webe selecione ASP.NET Web Application.

  3. No nome de campo, digite NorthwindWeb e clique em OK para criar o projeto.

Nesta etapa, você criará um Modelo de Dados de Entidade que representa a tabela clientes no banco de dados Northwind.

Para criar o modelo de dados de entidade

  1. On the Project menu, click Add New Item.

  2. No Add New Item caixa de diálogo, selecione ADO.Modelo de dados de entidade de NET.

  3. No nome , digite NorthwindModele em seguida, clique em Add.

    O Assistente de modelo de dados de entidade será exibida.

  4. No Assistente de modelo de dados de entidade, selecione gerar do banco de dadose em seguida, clique em próximo.

  5. Sobre o Choose Your Data Connection de página, execute uma das seguintes etapas:

    • If a data connection to the Northwind sample database is available in the drop-down list, click it.

      - ou -

    • Clique em Nova conexão para configurar uma nova conexão de dados. For more information, see How to: Create Connections to SQL Server Databases.

  6. If the database requires a password, select the option to include sensitive data, and then click Next.

    ObservaçãoObservação

    Se aparecer uma caixa de diálogo, clique em Sim para salvar o arquivo ao seu projeto.

  7. No Escolha seus objetos de banco de dados de página, expanda o tabelas nó, selecione a caixa de seleção ao lado de os clientese, em seguida, clique em Concluir.

    O diagrama de modelo de entidade será exibido e um arquivo de NorthwindModel.edmx será adicionado ao seu projeto.

Nesta etapa, você irá criar e testar o serviço de dados.

Para criar o serviço de dados

  1. On the Project menu, click Add New Item.

  2. No Add New Item caixa de diálogo, selecione O serviço do WCF dados.

  3. No nome , digite NorthwindCustomerse em seguida, clique em Add.

    O arquivo de NorthwindCustomers.svc será exibido no O Editor de código.

  4. No O Editor de código, localize o primeiro TODO: comentário e substitua o código a seguir:

    Inherits DataService(Of northwindEntities)
    
    public class NorthwindCustomers : DataService<northwindEntities>
    
    ObservaçãoObservação

    Dependendo da versão do banco de dados Northwind que você está usando, talvez você precise alterar "northwind" para "northwnd". Você também pode usar IntelliSense para descobrir o nome correto.

  5. Substitua os comentários a InitializeService o manipulador de eventos com o seguinte código:

    config.SetEntitySetAccessRule("*", EntitySetRights.All)
    
    config.SetEntitySetAccessRule("*", EntitySetRights.All);
    
  6. Pressione Ctrl + F5 para executar o serviço. Será aberta uma janela do navegador e o esquema XML para o serviço será exibido.

  7. No endereço da barra, digite os clientes no final do URL de NorthwindCustomers.svc e pressione ENTER.

    Será exibida uma representação XML dos dados na tabela clientes.

    ObservaçãoObservação

    Em alguns casos, o Internet Explorer interpretará os dados como um RSS feed. Você deve certificar-se de que a opção para exibir os feeds RSS está desabilitada. For more information, see Solucionando problemas de referências de serviço.

  8. Close the browser window.

As próximas etapas, você criará um aplicativo de cliente do Windows Forms para consumir o serviço.

Creating the Client Application

Para criar o aplicativo cliente, você irá adicionar um segundo projeto, adicionar uma referência ao projeto de serviço, configurar uma fonte de dados e criar uma interface de usuário para exibir os dados do serviço.

Na primeira etapa, você irá adicionar um projeto Windows Forms para a solução e defina-o como projeto de inicialização.

Para criar o aplicativo de cliente

  1. Sobre o Visual Studio arquivo menu, clique em Adicionare, em seguida, clique em Novo projeto.

  2. No Novo projeto caixa de diálogo caixa, expanda o Visual Basic ou Visual C# nó e clique em Windowse selecione Aplicativo do Windows Forms.

  3. No nome , digite NorthwindCliente em seguida, clique em OK para abrir o projeto.

  4. Em Solution Explorer, selecione o projeto NorthwindClient.

  5. Sobre o projeto menu, clique em Set as Startup Project.

Nesta etapa, você irá adicionar uma referência de serviço para o WCF Data Services no projeto da Web.

Para adicionar uma referência de serviço

  1. Sobre o projeto menu, clique em Add Service Reference.

  2. In the Add Service Reference dialog box, click Discover.

    A URL para o serviço de NorthwindCustomers será exibido na endereço campo.

  3. Click OK to add the service reference.

Nesta etapa, você irá configurar uma fonte de dados para permitir a ligação de dados para o serviço.

Para ativar a vinculação de dados para o serviço

  1. On the Data menu, click Show Data Sources.

  2. In the Data Sources window, click Add New Data Source.

  3. No Escolher um tipo de fonte de dados página da Data Source Configuration Wizard, clique em objetoe, em seguida, clique em próximo.

  4. No Selecionar o objeto que deseja vincular a de página, expanda o NorthwindClient nó e em seguida, expanda o NorthwindClient.ServiceReference1 nó.

  5. Selecione os clientese em seguida, clique em Concluir.

Nesta etapa, você irá criar a interface do usuário que irá exibir os dados do serviço.

Para criar a interface do usuário

  1. Arrastar o os clientes nó a partir de Fontes de dados janela para o formulário.

    A DataGridView controle, uma BindingSource o componente e um BindingNavigator componente são adicionados ao formulário.

  2. Clique duas vezes no formulário para abrir o Editor de código e, em seguida, adicione o seguinte código para o Form1_Load manipulador de eventos:

           Dim proxy As New ServiceReference1.northwindModel.northwindEntities _
    (New Uri("https://localhost:53161/NorthwindCustomers.svc/"))
           Me.CustomersBindingSource.DataSource = proxy.Customers
    
               ServiceReference1.northwindModel.northwindEntities proxy = new
    ServiceReference1.northwindModel.northwindEntities(new
    Uri("https://localhost:53397/NorthwindCustomers.svc/"));
               this.customersBindingSource.DataSource = proxy.Customers;
    
    ObservaçãoObservação

    Dependendo da versão do banco de dados Northwind que você está usando, talvez você precise alterar "northwind" para "northwnd". Você também pode usar IntelliSense para descobrir o nome correto.

  3. Em Solution Explorer, o botão direito do mouse no arquivo NorthwindCustomers.svc e clique em View in Browser. Internet Explorer será aberto e o esquema XML para o serviço será exibido.

  4. Copie a URL da barra de endereços do Internet Explorer.

  5. O código que você adicionou na etapa 2, selecione https://localhost:14735/NorthwindCustomers.svc e substituí-lo com a URL que você acabou de copiar.

  6. Press F5 to run the application. As informações do cliente serão exibidas.

Agora você tem um aplicativo de trabalho que irá exibir uma lista de clientes do serviço NorthwindCustomers. Se você deseja expor dados adicionais por meio do serviço, você pode modificar o Modelo de Dados de Entidade para incluir tabelas adicionais a partir do banco de dados Northwind.

A próxima etapa opcional, você aprenderá como filtrar os dados que são retornados pelo serviço.

Adicionando recursos de filtragem

Nesta etapa, você irá personalizar o aplicativo para filtrar os dados por cidade do cliente.

Para adicionar a filtragem por cidade

  1. Em Solution Explorer, clique duas vezes em Form1. vb ou Form1. cs para exibir o Designer de formulários do Windows.

  2. Arrastar um TextBox controle e um Button de controle da caixa de ferramentas ao formulário.

  3. Clique duas vezes o Button de controle e, em seguida, adicione o seguinte código na Button1_Click manipulador de eventos:

           Dim proxy As New ServiceReference1.northwindModel.northwindEntities _
    (New Uri("https://localhost:53161/NorthwindCustomers.svc"))
           Dim city As String = TextBox1.Text
    
           If city <> "" Then
               Me.CustomersBindingSource.DataSource = From c In _
            proxy.Customers Where c.City = city
           End If
    
            ServiceReference1.northwindModel.northwindEntities proxy = new
     ServiceReference1.northwindModel.northwindEntities(new
     Uri("https://localhost:53397/NorthwindCustomers.svc/"));
        string city = textBox1.Text;
    
    if (city != "")
    {
        this.customersBindingSource.DataSource = from c in
     proxy.Customers where c.City == city select c;   
    
  4. No código anterior, substitua https://localhost:14735/NorthwindCustomers.svc com o URL a partir de Form1_Load manipulador de eventos.

  5. Press F5 to run the application.

  6. Na caixa de texto, digite London e, em seguida, clique no botão. Serão exibidos apenas os clientes de Londres.

Consulte também

Tarefas

Como: Adicionar, atualizar ou remover uma referência de serviço do WCF de dados