Skip to content

WerterBonfim/efcore-references

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

My resource for learning EFCore

I learned through:

EFCore version 5.0.4

How to execute

I'm using Linux to developer this tutorial

With Docker:

git clone https://github.com/WerterBonfim/efcore-references.git

cd efcore-references/docker

docker build -t sql-dev .
docker container run --rm --name sql -d -p 1433:1433 sql-dev

Next steps

  • Translate to english
  • Migrate to version 5.0.6
  • Separate each section into Class Library
  • Another resources coming soon.

Introduction to Entity Framework Core section

  • 6 - Applaying Migrations
  • 7 - Generate Scripts Sql Idempotent
  • 8 - Rollback Migrations
  • 1 - Insert
  • 2 - Read
  • 3 - Update
  • 4 - Delete
  • 1 - Deletando propriedades não configuradas
  • 2 - Resiliência da conexão
  • 3 - Alterando o nome da tabela de histórico de migrações

Mastering to Entity Framework Core section

  • 1 - Ensure Created/Deleted
  • 2 - Resolver GAP do Ensure Created
  • 3 - HealthCheck do Banco de dados
  • 4 - Gerenciar estado da conexão
  • 5 - Commandos ExecuteSql
  • 6 - Como se proteger de ataques Sql Injection
  • 7 - Detectando migraçoes pendentes
  • 8 - Forçando uma migração
  • 9 - Recuperando migrações existentes em sua aplicação
  • 10 - Recuperando migrações aplicadas em seu banco de dados
  • 11 - Gerar Script Sql de seu modelo de dados
  • 1 - Carregamento Adiantado (Eager)
  • 2 - Carregamento Explícito
  • 3 - Carregamento Lento (Famoso LazyLoad)
  • 1 - Configurando um filtro global
  • 2 - Ignorando filtros globais
  • 3 - Consultas projetadas
  • 4 - Consulta parametrizada
  • 5 - Consulta interpolada
  • 6 - Usando o recurso TAG em consultas
  • 7 - Entendendo diferença em consulta 1xN vs Nx1
  • 8 - Divisão de consultas com SplitQuery
  • 1 - Criando uma procedure de inserção
  • 2 - Executando uma inserção via procedure
  • 3 - Criando uma procedure de consulta
  • 4 - Executando uma consulta via procedure
  • 1 - Configurando log simplificado
  • 2 - Filtrado categoria de log
  • 3 - Escrevendo log em um arquivo
  • 4 - Habilitando erros detalhados
  • 5 - Habilitando visualização dos dados sensíveis
  • 6 - Configurando o batch size
  • 7 - Configurando o timeout do comando global
  • 8 - Configurando o timeout para um comando para um fluxo
  • 9 - Confgurando resiliência para sua aplicação
  • 10 - Criando uma estratégia de resiliência
  • 1 - Colletions
  • 2 - Sequências
  • 3 - Índices
  • 4 - Propagação de dados
  • 5 - Esquemas
  • 6 - Conversor de valores
  • 7 - Criar um conversor de valor customizado
  • 8 - Propriedades de sombra
  • 9 - Owned Types
  • 10 - Relacionamento 1 x 1
  • 11 - Relacionamento 1 x N
  • 12 - Relacionamento N x N
  • 13 - Campo de apoio (Backing field)
  • 14 - TPH e TPT
  • 15 - Sacola de propriedades (Property Bags)
  • 1 - Atributo Table
  • 2 - Atributo Inverse Property
  • 3 - Atributo NotMapped
  • 4 - Atributo Database Generated
  • 5 - Atributo Index
  • 6 - Atributo Comment
  • 7 - Atributo Backing Field
  • 8 - Atributo Keyless
  • 1 - Funções de datas
  • 2 - Funções Like
  • 3 - Funções DataLenght
  • 4 - Funções Property
  • 5 - Funções Collate
  • 1 - O que são interceptadores de comandos?
  • 2 - Criando e registrando um interceptador
  • 3 - Sobrescrevendo métodos da classe base
  • 4 - Aplicando hint NOLOCK nas consultas
  • 5 - Interceptando abertura de conexão com o banco
  • 6 - Interceptando alterações.
  • 1 - O que é trasação
  • 2 - Comportamento padrão do EF Core
  • 3 - Gerenciando transação manualmente
  • 4 - Revertendo uma transação
  • 5 - Salvando ponto de uma transação
  • 6 - Usando TransactionScopee
  • 1 - O que é UDF
  • 2 - Built-In Function
  • 3 - Registrando Funções
  • 4 - Registrando Funções Via Fluent API
  • 5 - Função definada pelo usuário
  • 6 - Customizando uma função complexa
  • 1 - Tracking vs NoTracking
  • 2 - Resolução de identidade
  • 3 - Desabilitando rastreamento de consultas
  • 4 - Consulta com tipo anônimo rastreada
  • 5 - Consultas projetadas
  • 1 - Migrações do EF Core
  • 2 - O que é necessário para criar uma migração?
  • 3 - Gerando uma migração
  • 4 - Analisando arquivos da migração
  • 5 - Gerando script SQL
  • 6 - Gerando script SQL idempotente
  • 7 - Aplicando migração no banco de dados
  • 8 - Desfazendo uma migração
  • 9 - Migrações pendentes
  • 10 - Engenharia Reversa
  • 1 - PostgreSQL
  • 2 - SQLite
  • 3 - InMemory
  • 4 - Azure Cosmos DB
  • 1 - Arquitetura Multi-tenant
  • 2 - Single-tenant vs Multi-tenant
  • 3 - Estratégias Multi-tenant
  • 4 - Criando o projeto
  • 5 - Instalando dependências
  • 6 - Preparando o ambiente
  • 7 - Estratégia 1 - Identificar na tabela
  • 8 - Estratégia 2 - Schema
  • 9 - Estratégia 3 - Banco de dados
  • 1 - O que é Repository Pattern?
  • 2 - O que é Unit-of-work?
  • 3 - DbContext já é um padrão Repository & Uow
  • 4 - Preparando o ambiente
  • 5 - Implementando UoW - Estratégia 1
  • 6 - Implementando UoW - Estragédia 2
  • 7 - Criando um Repositório Genérico
  • 8 - Consulta com Repositório Genérico
  • 1 - Conhecer o método ToQueryString
  • 2 - Depuração com DebugView
  • 3 - Redefinir o estado do seu contexto
  • 4 - Include com consulta filtrada
  • 5 - SingleOrDefault vs FirstOrDefault
  • 6 - Tabela sem chave primária
  • 7 - Usando Views de seu banco de dados
  • 8 - Forçar o uso do VARCHAR
  • 9 - Aplicar conversão de nomeclatura
  • 10 - Operadores de agregação
  • 11 - Operadores de agregação no agrupamento
  • 12 - Contadores de eventos
  • 1 - Criando testes usando o provider InMemory
  • 2 - Criando testes usando o provider SQLit
  • 1 - O que é Diagnostic Source?
  • 2 - Exemplo

About

My personal reference for EFCore 5

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published