.net Dbcontext Example

4 min read Jun 03, 2024
.net Dbcontext Example

Utilisation de DbContext dans .NET : Un exemple pratique

Le DbContext est un composant fondamental de Entity Framework Core, un ORM (Object-Relational Mapper) populaire pour les applications .NET. Il facilite l'interaction avec une base de données en permettant de manipuler des données en tant qu'objets, plutôt que d'écrire des requêtes SQL brutes.

Comprendre le concept de DbContext

Le DbContext est une classe qui encapsule une connexion à une base de données et offre un ensemble de méthodes pour accéder et manipuler des données. Il sert de pont entre votre application .NET et la base de données.

Un exemple simple

Voici un exemple concret d'utilisation de DbContext pour créer, lire, mettre à jour et supprimer des données dans une table "Produits" :

using Microsoft.EntityFrameworkCore;

namespace MyApplication
{
    public class ProductContext : DbContext
    {
        public DbSet Products { get; set; }

        protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
        {
            optionsBuilder.UseSqlServer("Server=localhost;Database=MyDatabase;Trusted_Connection=True;");
        }
    }

    public class Product
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public decimal Price { get; set; }
    }

    public class Program
    {
        static void Main(string[] args)
        {
            using (var context = new ProductContext())
            {
                // Création d'un nouveau produit
                var newProduct = new Product { Name = "Smartphone", Price = 600 };
                context.Products.Add(newProduct);
                context.SaveChanges();

                // Lecture de tous les produits
                var products = context.Products.ToList();
                foreach (var product in products)
                {
                    Console.WriteLine($"ID: {product.Id}, Nom: {product.Name}, Prix: {product.Price}");
                }

                // Mise à jour d'un produit
                var productToUpdate = context.Products.Find(1);
                if (productToUpdate != null)
                {
                    productToUpdate.Price = 700;
                    context.SaveChanges();
                }

                // Suppression d'un produit
                var productToDelete = context.Products.Find(2);
                if (productToDelete != null)
                {
                    context.Products.Remove(productToDelete);
                    context.SaveChanges();
                }
            }
        }
    }
}

Explication du code

  • La classe ProductContext hérite de DbContext. Elle définit une propriété Products de type DbSet<Product>, qui représente la table "Produits" dans la base de données.
  • La méthode OnConfiguring configure la connexion à la base de données. Dans cet exemple, nous utilisons SQL Server.
  • La classe Product représente un objet "Produit" avec ses propriétés (Id, Name, Price).
  • Dans la méthode Main, nous créons un objet ProductContext et l'utilisons pour effectuer les opérations CRUD (Create, Read, Update, Delete) sur les données.

Conclusion

Cet exemple illustre l'utilisation de base de DbContext pour interagir avec une base de données via Entity Framework Core. Il simplifie la gestion des données en permettant de les manipuler en tant qu'objets, ce qui rend le code plus lisible et plus facile à maintenir. N'hésitez pas à explorer les fonctionnalités avancées de DbContext pour répondre aux besoins spécifiques de votre application .NET.

Featured Posts