C# · Intermediário · Inglês · Técnico
DbContext
Classe central do EF Core que representa uma sessão com o banco: expõe os DbSet das entidades, rastreia mudanças e grava tudo com SaveChanges.
Onde usar
Aparece na configuração do EF e em repositórios e handlers. É leve e de vida curta, registrado como Scoped, e não é thread-safe: nunca compartilhe uma instância entre requisições ou threads.
Em código
class LojaDb(DbContextOptions<LojaDb> o)
: DbContext(o)
{
public DbSet<Livro> Livros => Set<Livro>();
}Exemplos
Register the DbContext as scoped.
Registre o DbContext como scoped.
A DbContext is not thread-safe.
Um DbContext não é thread-safe.
Cuidado
Não use como Singleton nem guarde em campo estático: o rastreamento de mudanças cresce sem parar e causa erros de concorrência.