DEV Community

Juarez Júnior
Juarez Júnior

Posted on

Mapeando e Manipulando Dados com Entity Framework Core

O Entity Framework Core (EF Core) é um ORM (Object-Relational Mapper) que facilita a interação com bancos de dados relacionais diretamente através de código C#. Ele permite mapear classes de domínio para tabelas de banco de dados e realizar operações como CRUD (Create, Read, Update e Delete) de forma eficiente e simples. Neste exemplo, veremos como configurar uma classe de contexto e realizar uma operação de inserção em um banco de dados SQLite.

Bibliotecas:
Para usar Entity Framework Core com suporte ao SQLite, instale os seguintes pacotes NuGet no seu projeto:

Install-Package Microsoft.EntityFrameworkCore
Install-Package Microsoft.EntityFrameworkCore.Sqlite
Enter fullscreen mode Exit fullscreen mode

Código de Exemplo:

using Microsoft.EntityFrameworkCore;
using System;
using System.Linq;

namespace EntityFrameworkCoreExemplo
{
    public class Produto
    {
        public int Id { get; set; }
        public string Nome { get; set; }
        public decimal Preco { get; set; }
    }

    public class AppDbContext : DbContext
    {
        public DbSet<Produto> Produtos { get; set; }

        protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
        {
            optionsBuilder.UseSqlite("Data Source=produtos.db");
        }
    }

    class Program
    {
        static void Main(string[] args)
        {
            using (var context = new AppDbContext())
            {
                context.Database.EnsureCreated();

                // Inserindo um novo produto
                context.Produtos.Add(new Produto { Nome = "Laptop", Preco = 1500.99m });
                context.SaveChanges();

                // Buscando e exibindo os produtos no banco de dados
                var produtos = context.Produtos.ToList();
                foreach (var produto in produtos)
                {
                    Console.WriteLine($"Id: {produto.Id}, Nome: {produto.Nome}, Preco: {produto.Preco}");
                }
            }
        }
    }
}
Enter fullscreen mode Exit fullscreen mode

Explicação do Código:
Neste exemplo, criamos a classe Produto com as propriedades Id, Nome e Preco. Em seguida, configuramos a classe AppDbContext, que representa o contexto do banco de dados, e usamos o método UseSqlite para indicar que o banco será um SQLite. No método Main, garantimos que o banco de dados seja criado e inserimos um novo produto na tabela. Após isso, buscamos todos os produtos no banco e os exibimos no console.

Conclusão:
O Entity Framework Core facilita o desenvolvimento de aplicações que interagem com bancos de dados, permitindo que você manipule dados diretamente através de classes C# sem precisar escrever SQL manualmente. Ele suporta uma ampla gama de bancos de dados e é uma ferramenta poderosa para criar sistemas robustos.

Código fonte: GitHub

Top comments (0)