.net Core Sql Connection Example

5 min read Jun 03, 2024
.net Core Sql Connection Example

Connexion à SQL Server avec .NET Core : Un guide étape par étape

Introduction

.NET Core offre une grande variété de possibilités pour se connecter à des bases de données, notamment SQL Server. Dans ce guide, vous trouverez un exemple simple et pratique pour établir une connexion à SQL Server avec .NET Core.

Prérequis

Avant de commencer, assurez-vous que vous avez les éléments suivants :

  • Visual Studio: La version la plus récente de Visual Studio est recommandée.
  • .NET Core SDK: Téléchargez et installez le SDK .NET Core de votre choix.
  • SQL Server: Vous avez besoin d'une instance de SQL Server en cours d'exécution, avec une base de données pour tester la connexion.

Étapes

  1. Créer un nouveau projet .NET Core

    Commencez par créer un nouveau projet .NET Core dans Visual Studio. Sélectionnez "Application Web ASP.NET Core" et cliquez sur "Suivant". Choisissez "API Web" pour le type d'application et cliquez sur "Créer".

  2. Installer le package NuGet

    Vous aurez besoin du package Microsoft.EntityFrameworkCore.SqlServer pour interagir avec SQL Server. Ouvrez la console de gestion de package (PMC) dans Visual Studio et entrez la commande suivante :

    Install-Package Microsoft.EntityFrameworkCore.SqlServer
    
  3. Créer un contexte de données

    Créez une classe pour gérer la connexion et les opérations de la base de données. Cette classe héritera de DbContext de Entity Framework Core.

    using Microsoft.EntityFrameworkCore;
    
    public class MyDbContext : DbContext
    {
        public MyDbContext(DbContextOptions options) : base(options)
        {
        }
    
        public DbSet YourModels { get; set; }
    }
    

    Remplacez YourModel par le nom de votre classe de modèle.

  4. Configurer la connexion

    Configurez la connexion à SQL Server dans le fichier appsettings.json de votre projet.

    {
      "ConnectionStrings": {
        "DefaultConnection": "Server=your_server_name;Database=your_database_name;User ID=your_user_name;Password=your_password"
      }
    }
    

    Remplacez les valeurs d'espace réservé par les informations d'identification de votre serveur SQL Server.

  5. Enregistrer la connexion dans le programme principal

    Configurez la connexion à la base de données dans le fichier Program.cs.

    using Microsoft.EntityFrameworkCore;
    using Microsoft.Extensions.Configuration;
    using Microsoft.Extensions.Hosting;
    
    var builder = WebApplication.CreateBuilder(args);
    
    // Configuration de la connexion à la base de données
    builder.Services.AddDbContext(options =>
    {
        options.UseSqlServer(builder.Configuration.GetConnectionString("DefaultConnection"));
    });
    
    var app = builder.Build();
    
    // ... le reste de votre code
    
  6. Tester la connexion

    Pour tester la connexion, ajoutez un endpoint à votre API Web qui ouvre une connexion à la base de données.

    using Microsoft.AspNetCore.Mvc;
    
    [ApiController]
    [Route("[controller]")]
    public class ConnectionController : ControllerBase
    {
        private readonly MyDbContext _context;
    
        public ConnectionController(MyDbContext context)
        {
            _context = context;
        }
    
        [HttpGet]
        public async Task Get()
        {
            try
            {
                // Vérifier si la connexion est active
                await _context.Database.OpenConnectionAsync();
    
                return Ok("Connexion établie avec succès.");
            }
            catch (Exception ex)
            {
                return BadRequest("Erreur de connexion : " + ex.Message);
            }
        }
    }
    

Conclusion

En suivant ces étapes, vous avez réussi à établir une connexion à SQL Server à partir de votre application .NET Core. Vous pouvez maintenant utiliser Entity Framework Core pour interagir avec la base de données, effectuer des opérations CRUD (Create, Read, Update, Delete) et bien plus encore. N'oubliez pas de sécuriser les informations de connexion de votre base de données en utilisant des variables d'environnement ou des services de gestion des secrets pour une meilleure sécurité.