Article image
Leonardo Oliveira
Leonardo Oliveira01/06/2024 17:00
Compartilhe

Introdução ao CRUD com C# de Forma Fácil e Rápida

    CRUD é um acrônimo para Create, Read, Update e Delete, que representam as quatro operações básicas para a manipulação de dados em um sistema de gerenciamento de banco de dados. Neste artigo, vamos explorar como implementar um sistema CRUD de forma fácil e rápida utilizando C# e o Entity Framework (EF), que é uma popular ferramenta ORM (Object-Relational Mapping) para .NET.

    Pré-requisitos

    Antes de começar, é necessário ter instalado o seguinte:

    • Visual Studio (ou qualquer outro IDE compatível com C#)
    • .NET SDK
    • Um banco de dados SQL (como SQL Server ou SQLite)

    Configuração do Projeto

    1. Crie um Novo Projeto:
    • Abra o Visual Studio.
    • Selecione "Create a new project".
    • Escolha "Console App" para um exemplo simples e clique em "Next".
    • Dê um nome ao seu projeto e clique em "Create".
    1. Instale o Entity Framework:
    • Abra o "NuGet Package Manager" (Tools -> NuGet Package Manager -> Manage NuGet Packages for Solution).
    • Pesquise por "EntityFramework" e instale o pacote "EntityFramework" na sua solução.

    Estrutura do Projeto

    Vamos criar um exemplo simples de um CRUD para gerenciar informações de livros. Primeiro, definimos o modelo (classe) que representará um livro.

    Modelo

    csharp
    Copiar código
    public class Book
    {
      public int Id { get; set; }
      public string Title { get; set; }
      public string Author { get; set; }
      public int Year { get; set; }
    }
    

    Contexto do Banco de Dados

    Agora, precisamos criar uma classe de contexto que herda de DbContext e define um DbSet para os livros.

    csharp
    Copiar código
    using System.Data.Entity;
    
    public class LibraryContext : DbContext
    {
      public DbSet<Book> Books { get; set; }
    
      public LibraryContext() : base("name=LibraryDB")
      {
      }
    }
    

    String de Conexão

    Adicione uma string de conexão no arquivo App.config ou Web.config, dependendo do tipo do projeto.

    xml
    Copiar código
    <connectionStrings>
      <add name="LibraryDB" connectionString="Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=LibraryDB;Integrated Security=True" providerName="System.Data.SqlClient"/>
    </connectionStrings>
    

    Operações CRUD

    Create (Criar)

    Vamos adicionar um método para inserir um novo livro no banco de dados.

    csharp
    Copiar código
    public static void AddBook(Book book)
    {
      using (var context = new LibraryContext())
      {
          context.Books.Add(book);
          context.SaveChanges();
      }
    }
    

    Read (Ler)

    Para buscar e exibir todos os livros, criamos um método de leitura.

    csharp
    Copiar código
    public static List<Book> GetBooks()
    {
      using (var context = new LibraryContext())
      {
          return context.Books.ToList();
      }
    }
    

    Update (Atualizar)

    Para atualizar as informações de um livro existente.

    csharp
    Copiar código
    public static void UpdateBook(Book book)
    {
      using (var context = new LibraryContext())
      {
          context.Entry(book).State = EntityState.Modified;
          context.SaveChanges();
      }
    }
    

    Delete (Excluir)

    Para deletar um livro do banco de dados.

    csharp
    Copiar código
    public static void DeleteBook(int bookId)
    {
      using (var context = new LibraryContext())
      {
          var book = context.Books.Find(bookId);
          if (book != null)
          {
              context.Books.Remove(book);
              context.SaveChanges();
          }
      }
    }
    

    Testando as Operações CRUD

    Vamos criar um pequeno programa para testar nossas operações CRUD.

    csharp
    Copiar código
    class Program
    {
      static void Main(string[] args)
      {
          // Create
          var newBook = new Book { Title = "The Catcher in the Rye", Author = "J.D. Salinger", Year = 1951 };
          AddBook(newBook);
    
          // Read
          var books = GetBooks();
          foreach (var book in books)
          {
              Console.WriteLine($"{book.Id}: {book.Title} by {book.Author}, {book.Year}");
          }
    
          // Update
          var firstBook = books.FirstOrDefault();
          if (firstBook != null)
          {
              firstBook.Title = "The Catcher in the Rye (Updated)";
              UpdateBook(firstBook);
          }
    
          // Delete
          if (firstBook != null)
          {
              DeleteBook(firstBook.Id);
          }
      }
    }
    

    Conclusão

    Implementar operações CRUD em C# com o Entity Framework é bastante simples e direto. Este artigo forneceu um guia rápido e prático para configurar um projeto, definir um modelo e realizar operações básicas de banco de dados. Com essas fundações, você pode expandir e adaptar o código para atender às necessidades específicas do seu projeto.

    Compartilhe
    Comentários (0)