Se connecter à Redis

Cette leçon montre comment utiliser Redis depuis WinForms. Le fonctionnement est identique pour d’autres types de projets ; WinForms sert uniquement d’exemple de démonstration.

Une fois installé, Redis s’exécute comme un service indépendant. Pour l’utiliser en C# WinForms, vous devez vous y connecter, de la même manière qu’avec une base de données classique.

La chaîne de connexion ci‑dessous est placée dans le fichier app.config

1. Configuration App.config

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <connectionStrings>
    <!-- Chaîne de connexion Redis -->
    <add name="RedisConnectionString" connectionString="127.0.0.1:6379"/>
    <!-- Forme courte connectionString="localhost" port par défaut 6379 -->
  </connectionStrings>
  <startup>
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
  </startup>
</configuration>Langage du code : HTML, XML (xml)

Explication de la chaîne de connexion

  • localhost / 127.0.0.1:Service Redis local
  • Port par défaut 6379 ; pour un port différent : 127.0.0.1:6380
  • Si Redis est protégé par un mot‑de‑passe : 127.0.0.1:6379,password=votremotdepasse

2. Code principal Form1.cs

Paquet NuGet requis

StackExchange.Redis

Espaces de noms à importer

using StackExchange.Redis;
using System.Configuration;Langage du code : C# (cs)
public partial class Form1 : Form
{
    // Objet d'accès à la base Redis
    private IDatabase db;
    // Lecture de la chaîne de connexion depuis le fichier de configuration
    private string ConnectionString = ConfigurationManager.ConnectionStrings["RedisConnectionString"].ConnectionString;
    // Connexion multiplexée (singleton recommandé par l'éditeur, volatile pour la sécurité des threads)
    private volatile IConnectionMultiplexer connection;

    public Form1()
    {
        InitializeComponent();
        // Créer la connexion
        connection = ConnectionMultiplexer.Connect(ConnectionString);
        // Récupérer la base de données par défaut numéro 0
        db = connection.GetDatabase();
    }

    private void button1_Click(object sender, EventArgs e)
    {
        // Méthode Set : écrire dans le cache (clé, valeur, expiration en secondes)
        bool res = Set(this.textBox1.Text, this.textBox2.Text, 1000);
        if (res)
        {
            MessageBox.Show("Opération réussie");
        }
        else
        {
            MessageBox.Show("Échec de l'opération");
        }
    }

    /// <summary>
    /// Enregistrement clé‑valeur chaîne Redis (wrapper simplifié)
    /// </summary>
    bool Set(string key, object data, int cacheTime)
    {
        if (string.IsNullOrEmpty(key)) return false;
        // Définir le délai d'expiration
        var expire = TimeSpan.FromSeconds(cacheTime);
        return db.StringSet(key, data.ToString(), expire);
    }
}Langage du code : C# (cs)

Se connecter à Redis

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *