Destino Dev

Cursos

Entity Framework Core: ORM com .NET

Código do curso: github.com/johnpires/entity-framework-core-orm-com-dotnet

Domine o Entity Framework Core, o ORM (Object-Relational Mapper) mais popular do ecossistema .NET. Neste curso intermediário, você aprenderá a mapear entidades e seus relacionamentos utilizando Data Annotations e Fluent API, gerenciar migrações de banco de dados com segurança e executar consultas eficientes usando LINQ.

Explore os recursos avançados do EF Core como lazy loading, eager loading, rastreamento de mudanças (change tracking) e estratégias de carregamento que impactam diretamente na performance da sua aplicação. Você também aprenderá a trabalhar com transações, tratar concorrência otimista e aplicar padrões de repositório e Unit of Work.

Ao final do curso, você terá construído um sistema de gestão completo aplicando todas as boas práticas de persistência de dados com EF Core, preparado para enfrentar desafios reais em projetos .NET profissionais.

Conteúdo do curso

Módulo 1: Fundamentos do Entity Framework Core

Introdução ao EF Core, configuração do DbContext, conexão com banco de dados e operações CRUD básicas.

  1. O que é ORM e por que usar EF Core (8 min)
  2. Instalação e configuração do EF Core com SQL Server (8 min)
  3. Criando o primeiro DbContext e Entidades (8 min)
  4. Operações CRUD básicas com EF Core (8 min)
  5. Change Tracking: como o EF Core rastreia mudanças (8 min)

Módulo 2: Mapeamento de Entidades e Relacionamentos

Mapeamento avançado com Data Annotations e Fluent API, relacionamentos 1:1, 1:N, N:N e herança.

  1. Data Annotations para configuração de entidades (8 min)
  2. Fluent API: configuração avançada de mapeamento (8 min)
  3. Relacionamentos Um-para-Um e Um-para-Muitos (8 min)
  4. Relacionamentos Muitos-para-Muitos (8 min)
  5. Herança: TPH, TPT e TPC (8 min)
  6. Owned Entities e Value Objects (8 min)

Módulo 3: Consultas LINQ e Otimização de Performance

LINQ avançado, eager loading, lazy loading, explicit loading, projeções e otimização de queries.

  1. Consultas LINQ básicas com EF Core (8 min)
  2. Eager Loading com Include e ThenInclude (8 min)
  3. Lazy Loading e Explicit Loading (8 min)
  4. Projeções com Select e DTOs (8 min)
  5. Raw SQL com FromSqlRaw e ExecuteSqlRaw (8 min)
  6. Diagnóstico de queries e evitando o problema N+1 (8 min)

Módulo 4: Migrações, Transações e Concorrência

Gerenciamento de migrações, transações, concorrência otimista e pessimista, soft delete e auditing.

  1. Criando e gerenciando migrações (8 min)
  2. Seed de dados e migrações customizadas (8 min)
  3. Transações explícitas e SaveChanges (8 min)
  4. Concorrência otimista com RowVersion (8 min)
  5. Soft Delete e Auditing automático com EF Core (8 min)

Módulo 5: Padrões Avançados e Projeto Final

Padrões Repository e Unit of Work, testes com EF Core InMemory e projeto final completo.

  1. Padrão Repository com EF Core (8 min)
  2. Padrão Unit of Work (8 min)
  3. Testes com EF Core InMemory e SQLite (8 min)
  4. Projeto Final: Sistema de Gestão de Tarefas — Estrutura (3 min)
  5. Projeto Final: Sistema de Gestão de Tarefas — Implementação (2 min)