LINQ to DB: Uma biblioteca de acesso ao banco de dados LINQ

linq-to-db-uma-biblioteca-de-acesso-ao-banco-de-dados-linq

Se você ainda não o conhece, o LINQ to DB é uma biblioteca de acesso ao banco de dados LINQ que oferece uma camada simples, leve, rápida e de tipo seguro entre seus objetos POCO e seu banco de dados.

Arquitetonicamente, está um passo acima de micro-ORMs como Dapper, Massive ou PetaPoco, pois você trabalha com expressões LINQ, não com strings mágicas, enquanto mantém uma fina camada de abstração entre seu código e o banco de dados. Suas consultas são verificadas pelo compilador C# e permitem fácil refatoração. LINQ to DB é um software gratuito e de código aberto.

O LINQ to DB

linq-to-db-uma-biblioteca-de-acesso-ao-banco-de-dados-linq

Características do LINQ to DB:

  • API de consulta avançada:
    • Sintaxe de junção explícita (além da sintaxe de junção LINQ padrão). LINQ To DB oferece suporte a todos os tipos de junção SQL padrão: INNER, LEFT, FULL, RIGHT, CROSS JOIN.
    • Suporte CTE – permite reutilizar a mesma parte SQML em consultas complexas e processamento de tabelas recursivas.
    • Cópia/inserção em massa – pega dados e opções de operação e, em seguida, executa inserções e retorna o status da operação.
    • Funções de janela/analíticas – as funções de janela são implementadas como métodos de extensão para propriedades estáticas Sql.Ext.
    • API de mesclagem que contém quatro grupos de métodos:
      • Métodos Merge, MergeInto, Using, UsingTarget para configurar a origem e o destino do comando de mesclagem.
      • Ativado, métodos OnTargetKey para configurar a condição de correspondência do comando de mesclagem.
      • InsertWhenNotMatched*, UpdateWhenMatched*, DeleteWhenMatched*, UpdateWhenNotMatchedBySource*, DeleteWhenNotMatchedBySource*, UpdateWhenMatched*ThenDelete métodos para adicionar operações ao comando de mesclagem
      • Métodos Merge e MergeAsync para executar comandos no banco de dados
  • Extensibilidade:
    • Capacidade de mapear SQL personalizado para funções estáticas.
  • LINQ

    O LINQ é o nome de um conjunto de tecnologias com base na integração de recursos de consulta diretamente na linguagem C#. Tradicionalmente, consultas feitas em dados são expressas como cadeias de caracteres simples sem verificação de tipo no tempo de compilação ou suporte a IntelliSense. Além disso, você precisará aprender uma linguagem de consulta diferente para cada tipo de fonte de dados: bancos de dados SQL, documentos XML, vários serviços Web etc. Com o LINQ, uma consulta é um constructo de linguagem de primeira classe, como classes, métodos, eventos.

    Para um desenvolvedor que escreve consultas, a parte mais visível “integrada à linguagem” do LINQ é a expressão de consulta. As expressões de consulta são uma sintaxe declarativa de consulta. Usando a sintaxe de consulta, você pode executar operações de filtragem, ordenação e agrupamento em fontes de dados com o mínimo de código. Você pode usar os mesmos padrões de expressão de consulta básica para consultar e transformar dados em bancos de dados SQL, conjuntos de dados do ADO.NET, documentos XML e fluxos e coleções .NET.

    Acesse a versão completa
    Sair da versão mobile