EF Core - DBContext

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • MyrinNew
    Senior Member
    • Feb 2024
    • 5175

    #1

    EF Core - DBContext

    A classe dbContext faz parte do Entity Framework e sua instância representa uma sessão do banco de dados. Nessa sessão você pode manipular e salvar instâncias de sua entidade para um banco de dados.


    Para usar o dbContext na sua aplicação, você deve criar uma classe que herda de dbContext.






    public class EscolaContext: DbContext
    {
    public SeuContexto(DbContextOptionsSeuContexto> options) : base(options)
    {

    }
    }







    A classe acima está derivando do DbContext e pode ser chamado de “classe de contexto”. Apesar de ter sido apenas declarado esse nosso trecho de código não faz nada ainda.


    Quando começamos a trabalhar em um projeto, definimos nossas classes que representam a nossa entidade. São modelos de dados com propriedades correspondentes aos campos do banco de dados. Porém não é suficiente ter apenas os Models precisamos transformá-las em entidades rastreáveis.


    Então, em nossa classe de contexto temos que declarar a propriedade DBSet. (DbSet)


    Quando declaramos essa propriedade em nossa classe de contexto estamos dizendo ao Entity Framework que queremos que ele rastreie e gerencie as entidades desse tipo no banco de dados.


    Agora, vamos imaginar que na nossa aplicação tem dois Models: Estudante e Materia, podemos transformá-las em entidades do Entity Framework adicionando em nossa classe de contexto. Vale ressaltar que você precisa ter os modelos criados em sua aplicação.






    public class EscolaContext: DbContext
    {
    public DbSetStudent> Estudantes { get; set; }
    public DbSetGrade> Materias { get; set; }
    }







    Após fazer isso, o EF Core será capaz de rastrear as instâncias de Estudante e Materia que estão associadas ao contexto EscolaContext permitindo a interação com o banco de dados.


    👉🏻 Continuar leitura - onModelCreating (recomendado)


    👉🏻 Continuar leitura - Configurar banco de dados




    More...
Working...