Acesso a Dados

Dominando o Entity Framework Core

Um guia definitivo para você dominar por completo este poderoso ORM

  • Avançado
  • 18:00 Horas
  • 23 módulos
  • 179 aulas
Rafael AlmeidaMicrosoft MVP

Introdução

3 aulas

Setup do Ambiente

3 aulas
  • Instalação do .NET 5 e SQL Server 4:00
  • Criando um projeto via CLI 5:00
  • Criando classes de entidades 11:00

EF Database

13 aulas
  • Introdução 2:00
  • Para que serve o Ensure Deleted/Created? 5:00
  • Resolvendo GAP do EnsureCreated para múltiplos contextos 8:00
  • HealthCheck do banco de dados 6:00
  • Gerenciando o estado da Conexão 8:00
  • Conhecendo os comandos ExecuteSql 6:00
  • Como se proteger de ataques do tipo SQL Injection? 7:00
  • Detectando migrações Pendentes 6:00
  • Forçando uma migração 4:00
  • Recuperando todas as migrações existentes em sua aplicação 4:00
  • Recuperando migrações aplicadas em seu banco de dados 5:00
  • Gerando o script de criação SQL do modelo de dados 3:00
  • Teste os seus conhecimentos 3:00

Tipos de carregamento - DeepDive

5 aulas
  • Tipos de carregamentos 1:00
  • Consultando dados usando carregamento adiantando (Eager) 6:00
  • Consultando dados usando carregamento explícito (Explicitly) 9:00
  • Consultando dados usando carregamento lento (LazyLoad) 17:00
  • Teste os seus conhecimentos 4:00

Consultas

9 aulas
  • Introdução a consultas 2:00
  • Configurando um filtro global 7:00
  • Ignorando filtros globais 2:00
  • Criando consultas projetadas 8:00
  • Criando consultas parametrizadas 7:00
  • Criando consultas interpoladas 4:00
  • Usando o recuso TAG em suas consultas para auditar comandos 3:00
  • Entendendo a diferença em consultas 1xN vs Nx1 7:00
  • Divisão de consultas com SplitQuery 9:00

Stored Procedures

5 aulas
  • Introdução 1:00
  • Criando uma procedure de inserção 5:00
  • Executando inserção via procedure 4:00
  • Criando uma procedure de consulta 3:00
  • Executando uma consulta via procedure 7:00

Infraestrutura

11 aulas
  • Introdução 2:00
  • Configurando um log simplificado 6:00
  • Filtrando eventos de seus logs 7:00
  • Gravando seus logs em um arquivo 5:00
  • Habilitando erros detalhados 5:00
  • Habilitando visualização dos dados sensíveis 5:00
  • Habilitando Batch Size 6:00
  • Configurando o Timeout do comando global 4:00
  • Configurando o Timeout do comando para um fluxo 2:00
  • Habilitando resiliência para sua aplicação 4:00
  • Criando uma estratégia de resiliência 4:00

Modelo de dados

20 aulas
  • Introdução 2:00
  • Collations 9:00
  • Sequencias 8:00
  • Índices 10:00
  • Propagação de dados 7:00
  • Esquemas 4:00
  • Conversores de Valores 10:00
  • Criando um conversor de valor customizado 13:00
  • O que é Shadow Properties 7:00
  • Configurando uma propriedade de sombra 3:00
  • Inserindo e Consultando dados usando uma propriedade de sombra 6:00
  • Owned Types 12:00
  • Configurando Relacionamento um-para-um 15:00
  • Configurando Relacionamento um-para-muitos 5:00
  • Configurando Relacionamento muitos-para-muitos 9:00
  • Customização muitos-para-muitos 5:00
  • Campo de apoio 7:00
  • Configurando modelo de dados com TPH 12:00
  • Configurando modelo de dados do TPT 5:00
  • Sacola de propriedades 7:00

Atributos - DataAnnotations

9 aulas
  • Introdução 2:00
  • Atributo Table 5:00
  • Atributo Inverse Property 5:00
  • Atributo NotMapped 3:00
  • Atributo Database Generated 6:00
  • Atributo Index 3:00
  • Atributo Comment 3:00
  • Atributo Backing Field 2:00
  • Atributo Keyless 2:00

EF Functions

6 aulas
  • Introdução 1:00
  • Funções de datas 11:00
  • Função Like 5:00
  • Função DataLength 6:00
  • Função Property 7:00
  • Função Collate 4:00

Interceptação

7 aulas
  • Introdução 1:00
  • O que são interceptadores de comandos? 3:00
  • Criando e registrando um interceptador 5:00
  • Sobrescrevendo métodos da classe base 6:00
  • Aplicando hint NOLOCK nas consultas 6:00
  • Interceptando abertura de conexão com o banco 6:00
  • Interceptando alterações 5:00

Transações

7 aulas
  • Introdução 1:00
  • O que é transação? 6:00
  • Comportamento padrão do EF Core 5:00
  • Gerenciando transação manualmente 8:00
  • Revertendo uma transação 5:00
  • Salvando ponto de uma transação 7:00
  • Usando TransactionScope 6:00

UDFs (Funções definidas pelo usuário)

7 aulas
  • Introdução 1:00
  • O que é UDF? 2:00
  • Built-In Function 9:00
  • Registrando Funções 6:00
  • Registrando Funções Via Fluent API 5:00
  • Função defina pelo usuário 4:00
  • Customizando uma função complexa 14:00

Performance

6 aulas
  • Introdução 1:00
  • Tracking vs NoTracking 7:00
  • Resolução de Identidade 10:00
  • Desabilitando rastreamento de consultas 4:00
  • Consulta projeta e rastreada 5:00
  • Consultas Projetas 8:00

Migrations

11 aulas
  • Introdução 2:00
  • Migrações 2:00
  • Dependências necessárias para criar uma migração 9:00
  • Gerando uma migração 5:00
  • Analisando arquivos da migração 5:00
  • Gerando script SQL 4:00
  • Gerando script SQL idempotente 5:00
  • Aplicando migração no banco de dados 7:00
  • Desfazendo migrações 9:00
  • Migrações pendentes 5:00
  • Engenharia reversa 11:00

Acessando outros bancos de dados

5 aulas
  • Introdução 1:00
  • Provider PostgreSQL 10:00
  • Provider SQLite 6:00
  • Provider InMemory 4:00
  • Provider Azure Cosmos DB 8:00

Aplicação MultiTenant

10 aulas
  • Introdução 1:00
  • Arquitetura Multi-tenant 2:00
  • Single-tenant vs Multi-tenant 8:00
  • Estratégias Multi-tenant 6:00
  • Criando o projeto 4:00
  • Instalando dependências 3:00
  • Preparando o ambiente 12:00
  • Estratégia 1 - Identificar na tabela 15:00
  • Estratégia 2 - Schema 22:00
  • Estratégia 3 - Banco de dados 15:00

Padrão Repository & UoW

11 aulas
  • Introdução 1:00
  • O que é Repository Pattern? 4:00
  • O que é Unit-Of-Work? 4:00
  • DbContext já é um padrão Repository & UoW 5:00
  • Preparando o Ambiente 10:00
  • Implementando Repository Pattern 17:00
  • Implementando Persistência na API 8:00
  • Implementando UoW - Estratégia I 7:00
  • Implementando UoW - Estratégia II 6:00
  • Criando um Repositório Genérico 22:00
  • Consulta com Repositório Genérico 4:00

Dicas e Truques

14 aulas
  • Introdução 2:00
  • Preparando o ambiente 8:00
  • Método ToQueryString 6:00
  • Análise com DebugView 5:00
  • Redefinindo o estado do contexto 3:00
  • Include com consultas filtradas 3:00
  • SingleOrDefault vs FirstOrDefault 8:00
  • Tabela sem chave primária 5:00
  • Usando Views de seu banco de dados 8:00
  • Forçando o uso do VARCHAR 5:00
  • Aplicando conversão de nomenclatura 6:00
  • Operadores de agregação 6:00
  • Operadores de agregação no agrupamento 3:00
  • Contadores de eventos 7:00

Testes

5 aulas
  • Introdução 1:00
  • Preparando o ambiente 4:00
  • Criando entidade e contexto 3:00
  • Criando testes usando o provider InMemory 14:00
  • Criando testes usando o provider SQLite 11:00

Sobrescrevendo comportamentos do EF Core

6 aulas
  • Introdução 1:00
  • Preparando o ambiente 3:00
  • Criando entidade e contexto 4:00
  • Gerador SQL customizado 8:00
  • Criando factory do gerador SQL 6:00
  • Usando o gerador SQL customizado 3:00

Diagnostics

5 aulas
  • Introdução 1:00
  • O que é Diagnostic Source? 2:00
  • Criando um interceptador 7:00
  • Criando um listener 3:00
  • Assinando o listener e validando 4:00

Encerramento

1 aulas
  • Agradecimentos 1:00

A Microsoft revolucionou o desenvolvimento de aplicações com o .NET Core e reescreveu do zero o Entity Framework na versão Core, que está muito mais poderoso e performático.

Neste curso você vai aprender todos as funcionalidades, técnicas e abordagens para dominar por completo o Entity Framework Core, é um guia definitivo para você se tornar um especialista neste poderoso ORM


Este curso utiliza a versão mais nova do .NET Core (5.0)

Perguntas frequentes

Por quanto tempo terei acesso?

Estamos oferecendo 1 ano de acesso para você ter muito tempo para estudar.

O curso é teórico e prático?

Sim, o curso Dominando o Entity Framework Core aborda toda a teoria que depois é colocada em prática durante o desenvolvimento da aplicação no decorrer do curso.

Como eu tiro as minhas dúvidas durante o curso?

Basta postar sua dúvida no fórum! Abaixo de cada aula existe um fórum onde o instrutor irá lhe ajudar.

Posso assistir o curso por tablet ou smartphone?

Sim, qualquer dispositivo é suportado.

Rafael Almeida

Rafael Almeida

Microsoft MVP

Rafael Almeida é Microsoft MVP, arquiteto e desenvolvedor de software, palestrante, instrutor e contribuidor de projetos open source, dentre eles o Entity Framework Core.

Casado, pai da Eduarda e Heloysa, autodidata, apaixonado por tecnologia, em especial arquitetura de software e acesso a dados. 

Tem mais 14 anos de experiência com desenvolvimento de software. Já trabalhou em muitos projetos de desenvolvimento de software, com foco especial em .NET, design/desenvolvimento de banco de dados.

Apaixonado por projetos de código aberto, devops, arquitetura de microsserviços, transformação digital e acesso a dados de alto desempenho, é um curioso da tecnologia blockchain.

Adora compartilhar conhecimento e aprender novas tecnologias. Sempre focando em resolver problemas e ajudar as pessoas.

Sua stack de paixões são:

.NET, Apache Kafka, Entity Framework Core, gRPC, PostgreSQL, ScyllaDB (seu caçula) e acesso a dados de alta performance.

Dominando o Entity Framework Core

Um guia definitivo para você dominar por completo este poderoso ORM