Compartilhar via


Criando o LINQ to SQL classes: Usando o Designer Relacional de Objetos

O Object Relational Designer (Designer Relacional de Objetos) permite o mapeamento de classes LINQ to SQL às tabelas em um banco de dados.Essas classes mapeadas são também conhecidas como classes de entidade.As propriedades de uma classe de entidade mapeiam para as colunas da tabela e você pode BIND os dados a controles em um Windows formulário. Para obter mais informações sobre o LINQ to SQL, consulte Usando LINQ no Visual Basic Express.

Nesta lição, você aprenderá como usar o Designer Relacional de Objetos para criar classes de entidade que são mapeadas para tabelas no banco de dados Northwind.Em seguida, você exibirá dados em um aplicativo Windows Forms.

Pré-requisitos

  • Se você não instalou SQL Server Express Edition quando você instalou Visual Basic Express Edition, você deve fazer isso antes de continuar. Não há suporte para bancos de dados SQL Server Compact 3.5 em LINQ to SQL.Para obter informações sobre como obter SQL Server Express Edition, consulte a seção Obtendo SQL Server Express Edition em Como: Instalar bancos de dados de exemplo.

  • Para concluir esta lição, você deve ter acesso à versão SQL Server do banco de dados de exemplo Northwind.Para obter mais informações, consulte Como: Instalar bancos de dados de exemplo.

Tente-o!

Para abrir o O/R Designer

  1. On the Arquivo menu, clicar Novo projeto.

  2. No Novo projeto caixa de diálogo, no Modelos painel, clicar Aplicativo do Windows Forms, nomeie o projeto LINQToSQLSample e, em seguida, clicar OK.

    Abre um novo projeto Windows Forms.

  3. No menu Project, clique em Add New Item.

  4. clicar no LINQ to SQL classes modelo e tipo NorthwindSample.dbml no Nome box.

  5. Clique em Adicionar.

    Um LINQ to SQL file vazio (NorthwindSample.dbml) é adicionado ao projeto e o Designer Relacional de Objetos é aberto.

O Designer Relacional de Objetos é composto de duas superfícies de design: o painel Entities à esquerda e a área do painel Methods no lado direito.O painel Entities é a principal superfície de design que exibe as classes de entidade que são definidas no arquivo.O painel Methods é a superfície de design que exibe os métodos DataContext que são mapeados para os procedimentos armazenados e funções.Você pode ocultar o painel Methods clicando com o botão direito no O/R Designer e, em seguida, clicando em Hide Methods Pane.Você não usará o painel Methods nesta lição, mas você pode aprender mais sobre ele em DataContext Methods (O/R Designer).

Clique na superfície de design principal e verifique se seu nome é NorthwindSampleDataContext examinando a propriedade Name na Properties window.Você pode criar classes de entidade arrastando as tabelas do banco de dados do Database Explorer até a superfície Designer Relacional de Objetos.Mas primeiro você deve criar uma conexão com o banco de dados.Esse processo é como o processo descrito em Obtendo as informações que você precisa: Conectando a um banco de dados existente, exceto que nesta lição você usará um banco de dados SQL Server Express.

Para conectar-se ao Banco de Dados Northwind

  1. No menu View, clique em Database Explorer.

    O Database Explorer abre.

  2. Clique no botão Connect to Database na barra de ferramentas Database Explorer.

  3. Clique em Microsoft SQL Server Database File na janela Choose Data Sources e em seguida, clique em Continue.

    A caixa de diálogo Add Reference é aberta.

  4. Na caixa de diálogo Add Connection, verifique se a fonte de dados é Microsoft SQL Server Database File (SqlClient).

  5. Clique em Browse e em seguida localize e selecione o banco de dados Northwind.mdf.Clique em Open.

  6. Clique em Test Connection para verificar se a conexão foi bem-sucedida.

  7. Clique em OK para fechar a caixa de diálogo Add Connection.

Criando classes de entidade

As tabelas no banco de dados Northwind agora estão visíveis no Database Explorer.Você pode arrastar tabelas do Database Explorer para o O/R Designer.Isso cria automaticamente classes de entidade que têm propriedades que mapeiam as colunas nas tabelas que você arrastou do Database Explorer.

Para criar classes de entidade

  1. No Database Explorer, expanda Northwind.mdf e em seguida expanda Tables.

  2. Arraste Customers do Database Explorer até a superfície do Designer Relacional de Objetos.Se for solicitado para copiar o arquivo de dados para seu projeto, clique em Yes.

    Uma classe de entidade chamada Customer é criada.Ela tem propriedades que correspondem às colunas na tabela Customers.

  3. Arraste Orders do Database Explorer até a área de Designer Relacional de Objetos.

    Uma classe de entidade chamada Order é criada e tem uma associação (relação) com a classe de entidade Customer.Ela tem propriedades que correspondem às colunas na tabela Orders.

Agora que você criou as classes de entidade, você pode adicioná-las para a janela Data Sources, executando o Data Source Configuration Wizard.

Para adicionar um classe de entidade como uma fonte de dados de objeto na janela Data Sources

  1. No menu Build, clique em Build LINQToSQLSample.

  2. No menu Data, clique em Show Data Sources.

  3. Na janela Data Sources, clique em Add New Data Source.

  4. Selecione Object na página Choose a Data Source Type e clique em Next.

  5. Expanda o nó LINQToSQLSample e localize a classe Customer.

    Observação:

    Se a Cliente classe não estiver disponível, clicar Cancelar, construir o projeto e execute o assistente novamente.

  6. Clique em Finish para criar a fonte de dados e adicionar a classe de entidade Customer para a janela Data Sources.

Ligando controles em um Windows Form a classes de entidade

Você pode adicionar controles que são ligados a dados a classes de entidade para um Windows Form arrastando tabelas ou campos da janela Data Sources para o formulário.

Adicionar controles ligados às classes de entidade

  1. Clique com o botão direito do mouse em Solution Explorer e em seguida, clique em View Designer.

  2. Na janela Data Sources, expanda Customer.

  3. Clique na seta suspensa próxima a CompanyName e em seguida, clique em Label.

  4. Arraste CompanyName para o formulário.

    Um rótulo e uma barra de ferramentas de navegação são adicionados ao formulário.

  5. Arraste Orders da janela Data Sources para o Form1.Coloque-o em CompanyName .

  6. Clique com o botão direito do mouse em Solution Explorer e em seguida, clique em View Code.

  7. Adicione o seguinte código ao formulário, na parte superior da classe Form, fora de qualquer método específico.

    Private NorthwindSampleDataContext1 As New _
        NorthwindSampleDataContext
    
  8. Crie um manipulador de eventos para o evento Form_Load clicando duas vezes no formulário.Adicione o seguinte código ao manipulador de eventos:

    CustomerBindingSource.DataSource = _
        NorthwindSampleDataContext1.Customers()
    
  9. Pressione F5 para executar o código.

  10. Quando o formulário abrir, clique no botão Move next na barra de ferramentas para percorrer as empresas e verificar se os dados de orders estão atualizados para exibir os pedidos do cliente selecionado.

Salvando alterações

Quando você adiciona os controles ao O/R Designer, o botão Save Data na barra de ferramentas de navegação não está ativado.Se deseja permitir que os usuários salvem as alterações, você deve primeiro ativar o botão Save e, em seguida, adicionar um código para salvar os dados alterados.

Para ativar o botão save

  1. No modo Design, selecione o botão Salvar na barra de ferramentas de navegação.(O botão com o ícone de disquete.)

  2. Na janela Properties, defina a propriedade Enabled como True.

  3. Clique duas vezes no botão save para criar um manipulador de eventos e alternar para o Editor de Códigos.

  4. Adicione o seguinte código ao manipulador de eventos do botão save:

    NorthwindSampleDataContext1.SubmitChanges()
    
  5. Pressione F5 para executar o código.

  6. Altere o valor em um dos campos Shipped Date e pressione a tecla TAB para confirmar a alteração.

  7. Clique no botão Save Data.

  8. Feche o formulário.

  9. Pressione F5 e verifique se a alteração feita foi salva.

Próximas etapas

Nesta lição você aprendeu como criar classes LINQ to SQL usando o O/R Designer.Na próxima lição, você aprenderá como ligar dados usando um consulta LINQ.Para saber mais sobre como usar LINQ em um aplicativo, consulte Usando LINQ no Visual Basic Express.

Próxima Lesson: Usar o LINQ para BIND dados a controles

Consulte também

Tarefas

Armazenar e acessar dados

Exibindo dados relacionados

Walkthrough: Creating LINQ to SQL Classes (O/R Designer)

Conceitos

Usando LINQ no Visual Basic Express

O/R Designer Overview

Outros recursos

Gerenciando seus registros: usando dados em seu programa