DEV Community

Juarez Júnior for Develop4Us

Posted on • Edited 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

Image of Datadog

The Future of AI, LLMs, and Observability on Google Cloud

Datadog sat down with Google’s Director of AI to discuss the current and future states of AI, ML, and LLMs on Google Cloud. Discover 7 key insights for technical leaders, covering everything from upskilling teams to observability best practices

Learn More

Top comments (0)

Billboard image

The Next Generation Developer Platform

Coherence is the first Platform-as-a-Service you can control. Unlike "black-box" platforms that are opinionated about the infra you can deploy, Coherence is powered by CNC, the open-source IaC framework, which offers limitless customization.

Learn more