Etapas comuns de uso do LINQ to SQL

Para implementar um aplicativo LINQ to SQL, siga as etapas descritas mais adiante neste tópico. Observe que várias etapas são opcionais. É muito provável que você possa usar o modelo de objeto em seu estado padrão.

Para um início muito rápido, use o Object Relational Designer para criar seu modelo de objeto e começar a codificar suas consultas.

Criando o modelo de objeto

A primeira etapa é criar um modelo de objeto a partir dos metadados de um banco de dados relacional existente. O modelo de objeto representa o banco de dados de acordo com a linguagem de programação do desenvolvedor. Para obter mais informações, consulte O modelo de objeto do LINQ to SQL.

1. Selecione uma ferramenta para criar o modelo.

Três ferramentas estão disponíveis para criar o modelo.

  • O Object Relational Designer

    Esse designer fornece uma interface de usuário perfeita para criar um modelo de objeto a partir de um banco de dados existente. Essa ferramenta faz parte do IDE do Visual Studio e é mais adequada para bancos de dados pequenos ou médios.

  • A ferramenta de geração de código SQLMetal

    Esse utilitário de linha de comando fornece um conjunto ligeiramente diferente de opções do Designer Relacional de Objetos. A modelagem de grandes bancos de dados é mais bem efetuada com essa ferramenta. Para obter mais informações, consulte SqlMetal.exe (ferramenta de geração de código).

  • Um editor de código

    Você pode escrever seu próprio código usando o editor de códigos do Visual Studio ou outro editor. Não recomendamos essa abordagem, que pode gerar erros, quando você tem um banco de dados e pode usar o Designer Relacional de Objetos ou a ferramenta SQLMetal. Entretanto, o editor de códigos pode ser útil para refinar ou modificar o código que você já gerou usando outras ferramentas. Para obter mais informações, confira Como personalizar classes de entidade usando o editor de código.

2. Selecione o tipo de código que você deseja gerar.

  • Um arquivo de código-fonte C# ou Visual Basic para mapeamento baseado em atributo.

    Em seguida, você inclui esse arquivo de código no seu projeto do Visual Studio. Para obter mais informações, consulte Mapeamento baseado em atributo.

  • Um arquivo XML para mapeamento externo.

    Usando essa abordagem, você pode manter os metadados de mapeamento fora de seu código de aplicativo. Para saber mais, confira Mapeamento externo.

    Observação

    O Designer Relacional de Objetos não oferece suporte à geração de arquivos de mapeamento externos. Você deve usar a ferramenta SQLMetal para implementar esse recurso.

  • Um arquivo DBML, que você pode modificar antes de gerar um arquivo de código final.

    Esse é um recurso avançado.

3. Refine o arquivo de código para refletir as necessidades do seu aplicativo.

Para essa finalidade, você pode usar o Designer Relacional de Objetos ou o editor de códigos.

Usando o modelo de objeto

A ilustração a seguir mostra a relação entre o desenvolvedor e os dados em um cenário de duas camadas. Para outros cenários, confira N Camadas e Aplicativos Remotos com LINQ to SQL.

Screenshot that shows the Linq Object Model.

Agora que você tem o modelo de objeto, você descreve as solicitações de informações e manipula dados dentro desse modelo. Você pensa em termos de objetos e propriedades no seu modelo de objeto e não em termos de linhas e colunas do banco de dados. Você não lida diretamente com o banco de dados.

Quando você instrui o LINQ to SQL a executar uma consulta que você descreveu ou chamar SubmitChanges() nos dados que você manipulou, o LINQ to SQL se comunica com o banco de dados na linguagem do banco de dados.

A seguir estão etapas comuns de uso do modelo de objeto que você criou.

1. Crie consultas para recuperar informações do banco de dados.

Para obter mais informações, confira Conceitos de consulta e exemplos de consulta.

2. Substitua comportamentos padrão para Insert, Update e Delete.

Esta etapa é opcional. Para obter mais informações, consulte Personalizar Operações de Inserção, Atualização e Exclusão.

3. Defina opções apropriadas para detectar e relatar conflitos de simultaneidade.

Você pode deixar o modelo com seus valores padrão para manipular conflitos de simultaneidade, ou pode alterá-lo para atender aos seus propósitos. Para obter mais informações, confira Como especificar quais membros são testados para conflitos de simultaneidade e Como especificar quando exceções de simultaneidade são geradas.

4. Estabeleça uma hierarquia de herança.

Esta etapa é opcional. Para obter mais informações, consulte Suporte de herança.

5. Forneça uma interface de usuário apropriada.

Esta etapa é opcional, e depende de como o aplicativo será usado.

6. Depure e teste seu aplicativo.

Para obter mais informações, consulte Suporte de depuração.

Confira também