.NET

Anunciando a disponibilidade geral do provedor principal do Couchbase EF

O Provedor principal do Couchbase EF agora é geralmente disponível. Esta versão traz o poder do Entity Framework Core para o Couchbase, permitindo que os desenvolvedores de .NET trabalhem com o Couchbase usando padrões familiares do EF Core.

O que é o provedor Couchbase EF Core?

O Entity Framework Core (EF Core) é um popular O/RM que simplifica o acesso ao banco de dados para aplicativos .NET. Ele permite que os desenvolvedores trabalhem com dados usando objetos C# e consultas LINQ em vez de escrever consultas brutas ao banco de dados. O EF Core permite a integração com vários bancos de dados, fornecendo rastreamento automático de alterações, transações e uma API DbContext familiar. É uma interface familiar que os desenvolvedores podem usar para economizar tempo e se integrar a muitas estruturas e bibliotecas adjacentes a bancos de dados.

O Provedor principal do Couchbase EF permite que os desenvolvedores usem o Entity Framework Core com Servidor Couchbase e Couchbase Capella (agora disponível com um nível gratuito perpétuo). Com esse provedor, você pode trabalhar com documentos do Couchbase como se fossem entidades relacionais, usando consultas Linq, DbContext e controle de alterações.

Primeiros passos

Para instalar o provedor do Couchbase EF Core, adicione o arquivo Pacote NuGet:

Exemplo: usando o EF Core com o Couchbase

Aqui está um exemplo simples de "carrinho de compras" de como configurar e usar o Provedor principal do Couchbase EF com um modelo de carrinho de compras.

Definir seus modelos de entidade

Criar um DbContext para o Couchbase

Esse arranjo pressupõe que você tenha criado um bucket no Couchbase chamado Comprasque contém um escopo chamado Comércio eletrônicoque contém coleções Itens e Carrinhos.

Observe também que o registro em log é opcional, mas é uma boa ideia ativá-lo para ajudar a identificar quaisquer problemas que possam surgir.

Inserir e consultar dados

Veja um exemplo de como os documentos no Couchbase ficarão após a inserção:

O que funciona na versão GA?

Toda a funcionalidade do EF Core é muito, muito grande. Ser capaz de lidar com todas as instruções Linq possíveis, por exemplo, é quase impossível, mesmo para provedores maduros do EF Core, como o SQL Server. Entretanto, essa versão oferece suporte a muitos recursos essenciais do EF Core, incluindo:

Suporte a LINQ - Traduz as consultas LINQ para Couchbase SQL++.
Operações básicas de CRUD - Inserir, atualizar e excluir funcionam como esperado.
Controle de alterações - As entidades são rastreadas para atualizações eficientes.

Observe também que o uso de métodos Async é necessário. O SDK .NET do Couchbase é totalmente assíncrono. Se você tentar usar um método não assíncrono, receberá um erro de tempo de execução do tipo O provedor de banco de dados principal do Couchbase EF não oferece suporte a E/S síncrona.

Limitações conhecidas

Embora esse seja um marco significativo, Alguns recursos ainda estão em andamentoincluindo:

Desnormalização - Aninhamento de coleções dentro de documentos (por exemplo, armazenamento de Itens dentro Carrinho como um único documento JSON) ainda não é compatível.
Carregamento ansioso - .Include() podem não funcionar como esperado.
Suporte à função SQL++ - Algumas funções do SQL++, como META, RYOWetc., não estão totalmente implementados.
Transações - Ainda não é compatível com esta versão.

Participe da conversa!

Queremos seu feedback! Ajude a moldar o futuro do Provedor principal do Couchbase EF:

O que vem a seguir?

Esta versão é apenas o começo! Estamos trabalhando ativamente para desenvolver essa implementação do EF Core. Seu feedback ajudará a priorizar a funcionalidade.

Experimente hoje mesmo e diga-nos o que achou. Boa codificação!



Compartilhe este artigo
Receba atualizações do blog do Couchbase em sua caixa de entrada
Esse campo é obrigatório.

Author

Posted by Matthew Groves

Matthew D. Groves is a guy who loves to code. It doesn't matter if it's C#, jQuery, or PHP: he'll submit pull requests for anything. He has been coding professionally ever since he wrote a QuickBASIC point-of-sale app for his parent's pizza shop back in the 90s. He currently works as a Senior Product Marketing Manager for Couchbase. His free time is spent with his family, watching the Reds, and getting involved in the developer community. He is the author of AOP in .NET, Pro Microservices in .NET, a Pluralsight author, and a Microsoft MVP.

Deixe um comentário

Pronto para começar a usar o Couchbase Capella?

Iniciar a construção

Confira nosso portal do desenvolvedor para explorar o NoSQL, procurar recursos e começar a usar os tutoriais.

Use o Capella gratuitamente

Comece a trabalhar com o Couchbase em apenas alguns cliques. O Capella DBaaS é a maneira mais fácil e rápida de começar.

Entre em contato

Deseja saber mais sobre as ofertas do Couchbase? Deixe-nos ajudar.