Compartilhar via


Criar classes LINQ to SQL mapeadas para tabelas e visões (O/R Designer)

Classes LINQ to SQL mapeadas para tabelas e visões de banco de dados são chamadas classes de entidade. A classe de entidade é mapeada para um registro, enquanto as propriedades individuais de uma classe de entidade são mapeadas para as colunas individuais que compõem um registro. Crie classes de entidade baseadas em tabelas ou exibições de banco de dados arrastando tabelas ou exibições do Gerenciador de Servidores ou do Gerenciador de Banco de Dados para as ferramentas LINQ para SQL no Visual Studio. O Designer O/R gera as classes e aplica o LINQ específico aos atributos SQL para habilitar a funcionalidade 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 relacional de objeto simples porque dá suporte apenas a relações de mapeamento 1:1. Em outras palavras, uma classe de entidade pode ter apenas uma relação de mapeamento 1:1 com uma tabela ou exibição de banco de dados. Não há suporte para mapeamento complexo, como mapeamento de uma classe de entidade para várias tabelas. 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 estão mapeadas para tabelas ou visões de banco de dados

Arrastar tabelas ou exibições do Explorador de Servidores ou do Explorador de Banco de Dados para o Designer de O/R cria classes de entidade, além de métodos que são usados para executar atualizações.

Por padrão, o runtime LINQ to SQL cria lógica para salvar 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 as informações da chave primária). Se você não quiser esse comportamento, poderá configurar uma classe de entidade para usar procedimentos armazenados para executar inserções, atualizações e exclusões em vez de usar o comportamento padrão do LINQ to SQL em tempo de execução. Para obter mais informações, consulte Como atribuir procedimentos armazenados para executar atualizações, inserções e exclusões (Designer O/R).

Observação

As instruções deste artigo ilustram a versão mais recente da experiência de desenvolvimento interativo (IDE) disponível no Visual Studio. Seu computador pode mostrar nomes ou locais diferentes para alguns dos elementos da interface do usuário. Talvez você esteja usando uma versão diferente do Visual Studio ou configurações de ambiente diferentes. Para obter mais informações, consulte Personalizar o IDE.

Para criar classes LINQ to SQL mapeadas para tabelas ou visões de banco de dados

  1. No Gerenciador de Servidores ou Banco de Dados, expanda Tabelas ou Exibições e localize a tabela ou exibição de banco de dados que você deseja usar em seu aplicativo.

  2. Arraste a tabela ou a exibição para o Designer O/R.

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

Criar uma fonte de dados de objeto e exibir os dados em um formulário

Depois de criar classes de entidade usando o Designer O/R, você pode criar uma fonte de dados de objeto e preencher a janela Fontes 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 Criar Solução para criar seu projeto.

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

  3. Na janela de 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 Cliente não estiver disponível, cancele o assistente, crie o projeto e execute o assistente novamente.

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

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