Compartilhar via


Criar classes LINQ to SQL mapeadas para tabelas e exibições (Designer Relacional de Objetos)

As classes LINQ to SQL mapeadas para tabelas de banco de dados e exibições são chamadas de classes de entidade. A classe de entidade mapeia para um registro, enquanto as propriedades individuais de uma classe de entidade mapeiam para as colunas individuais que compõem um registro. Criar classes de entidade baseadas em tabelas de banco de dados ou exibições arrastando tabelas ou exibições do Gerenciador de Servidores ou do Gerenciador de Banco de Dados para as ferramentas LINQ to SQL no Visual Studio. O Designer Relacional de Objetos gera as classes e aplica os atributos específicos do LINQ to SQL para ativar a funcionalidade do LINQ to SQL (os recursos de comunicação e edição de dados do DataContext). Para obter informações detalhadas sobre classes LINQ to SQL, consulte o Modelo de objeto LINQ to SQL.

Observação

O Designer O/R é um mapeador de objeto relacional simples porque somente dá suporte a relações de mapeamento de 1:1. Em outras palavras, uma classe de entidade pode ter apenas uma relação de mapeamento de 1:1 com uma tabela ou exibição de banco de dados. O mapeamento complexo, como o mapeamento de uma classe de entidade para várias tabelas, não tem suporte. No entanto, você pode mapear uma classe de entidade para uma exibição que une várias tabelas relacionadas.

Criar classes LINQ to SQL que são mapeadas para tabelas ou exibições de banco de dados

Arrastar tabelas ou exibições do Gerenciador de Servidores ou do Gerenciador de Banco de Dados no Designer O/R cria classes de entidade além dos métodos DataContext usados para realizar atualizações.

Por padrão, o runtime do LINQ to SQL cria a lógica para salvar as alterações de uma classe de entidade atualizável de volta para o banco de dados. Essa lógica é baseada no esquema da tabela (as definições de coluna e informações de chave primária). Se você não quiser esse comportamento, poderá configurar uma classe de entidade para usar os procedimentos armazenados para executar inserções, atualizações e exclusões, em vez de usar o comportamento padrão de runtime do LINQ to SQL. Para obter mais informações, confira Como atribuir procedimentos armazenados para executar atualizações, inserções e exclusões (Designer Relacional de Objetos).

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.

Para criar classes LINQ to SQL que são mapeadas para tabelas ou exibições de banco de dados

  1. No Servidor/Gerenciador de Banco de Dados, expanda Tabelas ou Modos de exibição e localize a tabela ou exibição de banco de dados que você quer usar em seu aplicativo.

  2. Arraste a tabela ou exibição para o Designer Relacional de Objetos.

    Uma classe de entidade é criada e aparece na superfície de design. A classe de entidade tem propriedades que mapeiam para as colunas na tabela ou exibição selecionada.

Crie um objeto de fonte de dados e exiba os dados em um formulário

Depois de criar classes de entidade usando o Designer Relacional de Objetos, você pode criar uma fonte de dados de objeto e preencher a janela Fonte de dados com as classes de entidade.

Para criar uma fonte de dados de objeto com base nas classes de entidade do LINQ to SQL

  1. No menu Compilar, clique em Compilar Solução para criar o seu projeto.

  2. Para abrir a janela Fontes de Dados, no menu Dados, selecione Mostrar Fontes de Dados.

  3. Na janela Fontes de Dados, clique em Adicionar Nova Fonte de Dados.

  4. Clique em Objeto na página Escolher um Tipo de Fonte de Dados e selecione Avançar.

  5. Expanda os nós e localize e selecione sua classe.

    Observação

    Se a classe Customer não estiver disponível, cancele o assistente, compile o projeto e execute o assistente novamente.

  6. Clique em Concluir para criar a fonte de dados e adicionar a classe de entidade Customer à janela Fontes de Dados.

  7. Arraste itens da janela de Fontes de Dados para um formulário.