PRÉ
LANÇAMENTO
 

Dominando o Entity Framework Core

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

Professor:
Rafael Almeida
Nível:
(Avançado)
Categoria(s):
Acesso a Dados
Ementa
apresentação
Instrutor
Dominando o Entity Framework Core

  Introdução - [Em Breve]
  •    26/11/2020
    Apresentação pessoal
  •    26/11/2020
    Apresentação do curso
  EF Database - [Em Breve]
  •    26/11/2020
    Para que serve o Ensure Deleted/Created?
  •    26/11/2020
    Resolvendo GAP do EnsureCreated para múltiplos contextos
  •    26/11/2020
    HealthCheck do Banco
  •    26/11/2020
    Gerenciando o Estado da Conexão
  •    26/11/2020
    Gerando Script SQL de todo seu modelo de dados
  •    26/11/2020
    Conhecendo comandos ExecuteSql
  •    26/11/2020
    Como se proteger de Ataques SQL Injection?
  •    26/11/2020
    Comandos ExecuteSql (Evitando SQL Injection)
  •    26/11/2020
    Forçando uma Migração
  •    26/11/2020
    Detectando Migrações Pendentes
  •    26/11/2020
    Recuperando todas migrações existentes em sua aplicação
  •    26/11/2020
    Recuperando migrações aplicadas em seu banco de dados
  Tipos de carregamento - DeepDive - [Em Breve]
  •    26/11/2020
    Consultando dados usando carregamento adiantando (Eager)
  •    26/11/2020
    Consultando dados usando carregamento explícito (Explicitly)
  •    26/11/2020
    Consultando dados usando carregamento lento (LazyLoad)
  Consultas - [Em Breve]
  •    26/11/2020
    Configurando um filtro global
  •    26/11/2020
    Ignorando filtros globais
  •    26/11/2020
    Criando consultas projetadas
  •    26/11/2020
    Criando consultas em tabelas sem chave primária
  •    26/11/2020
    Criando consulta parametrizada
  •    26/11/2020
    Criando consulta interpolada
  •    26/11/2020
    Usando o recuso TAG em suas consultas para auditar comandos
  •    26/11/2020
    Entendendo a diferença em consultas 1xN vs Nx1
  •    26/11/2020
    Divisão de consultas com SplitQuery
  •    26/11/2020
    Consultas Filtradas
  •    26/11/2020
    Usando operadores de consulta complexa
  Stored Procedures - [Em Breve]
  •    26/11/2020
    Criando uma procedure de consulta
  •    26/11/2020
    Criando uma procedure de inserção
  •    26/11/2020
    Executando uma consulta via procedure
  •    26/11/2020
    Executando uma inserção via procedure
  Infraestrutura - [Em Breve]
  •    26/11/2020
    Configurando Logger Simplificado
  •    26/11/2020
    Filtrando categoria do logger
  •    26/11/2020
    Habilitando visualização dos dados sensíveis
  •    26/11/2020
    Habilitando erros detalhados
  •    26/11/2020
    Configurando o Batch Size
  •    26/11/2020
    Configurando o Timeout do comando
  •    26/11/2020
    Configurando o Timeout do comando para um processo específico
  •    26/11/2020
    Habilitando resiliência de conexão
  •    26/11/2020
    Criando uma estratégia de resiliência
  •    26/11/2020
    Dados espaciais
  Modelo de dados - [Em Breve]
  •    26/11/2020
    Definindo uma Collation para o banco
  •    26/11/2020
    Configurando uma Sequência
  •    26/11/2020
    Configurando Índices
  •    26/11/2020
    Configurando o Seed
  •    26/11/2020
    Configurando esquemas
  •    26/11/2020
    Conhecendo conversores de valores
  •    26/11/2020
    Criando um conversor de valor customizado
  •    26/11/2020
    O que é Shadow Properties
  •    26/11/2020
    Configurando uma propriedade de sombra
  •    26/11/2020
    Inserindo e Consultando dados usando uma propriedade de sombra
  •    26/11/2020
    Tipos de propriedade (Owned Types)
  •    26/11/2020
    Configurando relacionamento 1 x 1
  •    26/11/2020
    Configurando relacionamento 1 x N
  •    26/11/2020
    Configurando relacionamento N x N
  •    26/11/2020
    Campo de apoio (Backing Field)
  •    26/11/2020
    Configurando Table-Per-Hierarchy (TPH)
  •    26/11/2020
    Configurando Table-Per-Type (TPT)
  •    26/11/2020
    Especificando fator de preenchimento do índice
  •    26/11/2020
    Conhecendo a nova API para propriedades de navegação
  •    26/11/2020
    O que é Property Bag?
  Atributos - DataAnnotations - [Em Breve]
  •    26/11/2020
    Usando atributo Table
  •    26/11/2020
    Usando atributo Index
  •    26/11/2020
    Usando atributo Comment
  •    26/11/2020
    Usando atributo BackingField
  •    26/11/2020
    Usando atributo Keyless
  •    26/11/2020
    Usando atributo InverseProperty
  •    26/11/2020
    Usando atributo NotMapped
  •    26/11/2020
    Usando atributo DatabaseGenerated
  EF Functions - [Em Breve]
  •    26/11/2020
    Trabalhando com Datas
  •    26/11/2020
    FreeText
  •    26/11/2020
    Contains
  •    26/11/2020
    IsDate
  •    26/11/2020
    Property
  •    26/11/2020
    Collate
  Expressions - [Em Breve]
  •    26/11/2020
    Expression<Func<T,bool>> vs Func<T,bool>
  •    26/11/2020
    Entendendo IQueryable+Entity Framework Core
  •    26/11/2020
    O que é ExpressionVisitor?
  •    26/11/2020
    Construindo um analisador de Expressions
  •    26/11/2020
    Descontruindo uma expression e recuperando seus dados
  Interceptação - [Em Breve]
  •    26/11/2020
    O que é o DbIntercepter?
  •    26/11/2020
    Criando uma classe e herdando os comportados de DbIntercepter
  •    26/11/2020
    Entendendo o método CommandCreated
  •    26/11/2020
    Analisando todos os métodos do DbIntercepter e suas funcionalidades
  •    26/11/2020
    Sobrescrevendo o método ReaderExecuting e customizando a query com Hints
  •    26/11/2020
    Interceptando o comando antes/depois de persistir dos dados
  Transações - [Em Breve]
  •    26/11/2020
    Gravando dados de forma segura
  •    26/11/2020
    O que é TransactionScope?
  •    26/11/2020
    Usando o escopo de transação
  •    26/11/2020
    Definindo Comportamentos do escopo da transação
  •    26/11/2020
    Níveis de Isolamento
  •    26/11/2020
    Salvar ponto de uma transação
  •    26/11/2020
    Especificar um Identificador para Transação
  Aplicação MultiTenant - [Em Breve]
  •    26/11/2020
    O que é uma aplicação multitenant?
  •    26/11/2020
    Criando uma solution
  •    26/11/2020
    Criando um projeto Web API
  •    26/11/2020
    Criando as entidades da aplicação
  •    26/11/2020
    Criando o arquivo de contexto
  •    26/11/2020
    Quais possíveis estratégias de MultiTenant podemos usar?
  •    26/11/2020
    Aplicando o multitenant em sua aplicação
  UDFs (Funções definidas pelo usuário) - [Em Breve]
  •    26/11/2020
    O que é DbFunctions?
  •    26/11/2020
    Criando um método e utilizando o atributo DbFunction
  •    26/11/2020
    O que é o método HasDbFunction?
  •    26/11/2020
    Criando um método complexo para ser traduzido para o servidor
  Performance - [Em Breve]
  •    26/11/2020
    AsNoTracking vs AsTracking e sua anotomia
  •    26/11/2020
    Melhores abordagens de uso para obter performance
  •    26/11/2020
    Resolução de identidade e suas vantagens
  Migrations - [Em Breve]
  •    26/11/2020
    Gerando uma migração
  •    26/11/2020
    Analisando os arquivos da migração
  •    26/11/2020
    Aplicando a migração no banco de dados
  •    26/11/2020
    Alterando um modelo de dados e gerando uma nova migração
  •    26/11/2020
    Entendendo a nova migração e aplicando no banco de dados
  •    26/11/2020
    Reverter uma migração (Rollback)
  •    26/11/2020
    Reverter para um linha do tempo de migrações
  •    26/11/2020
    Omitir o método OnConfiguring com Scaffold(Engenharia reversa)
  •    26/11/2020
    Informando provider e string de conexão no Scaffold(Engenharia reversa)
  Acessando outros bancos de dados - [Em Breve]
  •    26/11/2020
    Usando o banco de dados PostgreSQL
  •    26/11/2020
    Usando o banco de dados SQL Server
  •    26/11/2020
    Usando o banco de dados SQLite
  •    26/11/2020
    Usando o banco de dados CosmosDB
  •    26/11/2020
    Usando o banco de dados InMemory
  Padrão Repository & UoW - [Em Breve]
  •    26/11/2020
    O que é Repository Pattern?
  •    26/11/2020
    O que é UoW (Unit Of Work)?
  •    26/11/2020
    Criando um repositório
  •    26/11/2020
    Definindo uma estratégia de uso do padrão
  •    26/11/2020
    Implementando um UoW (Unit-Of-Work)
  Dicas e Truques - [Em Breve]
  •    26/11/2020
    Usando o CompareTO
  •    26/11/2020
    Usando o FirstOrDefault
  •    26/11/2020
    Colunas computadas (persistentes) armazenadas
  •    26/11/2020
    Obtendo instrução SQL usando o ToQueryString
  •    26/11/2020
    Usando o método IsRelational para validar provider selecionado
  •    26/11/2020
    Visão de depuração dos objetos
  •    26/11/2020
    Resetando o estado do Contexto
  •    26/11/2020
    Resolvendo conflitos de simultaneidade
  •    26/11/2020
    Cache de segundo nível
  Testes - [Em Breve]
  •    26/11/2020
    Criando projeto de testes
  •    26/11/2020
    Criando estrutura de arquivos de testes
  •    26/11/2020
    Executando testes usando banco de dados InMemory
  •    26/11/2020
    Executando testes usando banco de dados Sqlite
  Sobrescrevendo comportamentos do EF Core - [Em Breve]
  •    26/11/2020
    Conhecendo o coração do EF Core a QuerySqlGenerator
  •    26/11/2020
    Entendendo os principais métodos e suas responsabilidade
  •    26/11/2020
    Sobrescrevendo comportamentos de geração dos comandos SQL
  •    26/11/2020
    Sobrescrevendo consultas e implementando Hints Customizados
  Diagnostics - [Em Breve]
  •    26/11/2020
    O que é DiagnosticListener?
  •    26/11/2020
    Criando um Listener para interceptar comandos
  •    26/11/2020
    Criando um Listener para interceptar os comandos do EF Core
  •    26/11/2020
    Interceptando um comando de consulta e adicionando um Hint (NOLOCK)
  Encerramento - [Em Breve]
  •    26/11/2020
    Agradecimentos
Dominando o Entity Framework Core

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)

Atenção, este curso é um pré-lançamento e as aulas serão entregues por módulos. Confira as datas de liberação de cada módulo na nossa ementa.

FAQ

Já que é um pré-lançamento por quanto tempo terei acesso ao curso?

Durante nosso pré lançamento estamos oferecendo 2 anos de acesso para você ter muito tempo para estudar.
Adquirindo um curso em pré-lançamento nós garantimos ainda no mínimo 1 ano de acesso após a entrega total do curso.

O treinamento é 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 minhas dúvidas após o curso?

Você pode participar das Lives de tira-dúvidas ou encaminhar sua dúvida por e-mail.
Em breve nós teremos um fórum de dúvidas para cada curso.

Posso assistir o curso por tablet ou smartphone?

Sim, qualquer device é suportado.

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.