Diese Lektion zeigt die Redis‑Bedienung in WinForms. Die Vorgehensweise ist bei anderen Projekttypen vergleichbar, WinForms dient hier nur als Demonstrationsumgebung.
Nach der Installation läuft Redis als eigenständiger Dienst. Um es aus C# WinForms zu nutzen, stellen Sie eine Verbindung her, vergleichbar mit einer normalen Datenbankverbindung.
Die unten stehende Verbindungszeichenfolge wird in der Datei app.config hinterlegt
1. App.config‑Konfiguration
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<connectionStrings>
<!-- Redis‑Verbindungszeichenfolge -->
<add name="RedisConnectionString" connectionString="127.0.0.1:6379"/>
<!-- Kurzschreibweise connectionString="localhost" Standardport 6379 -->
</connectionStrings>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
</configuration>Code-Sprache: HTML, XML (xml)
Erläuterung zur Verbindungszeichenfolge
localhost/127.0.0.1:Lokaler Redis‑Dienst- Standardport 6379;Anderer Port:
127.0.0.1:6380 - Wenn Redis mit Passwort geschützt ist:
127.0.0.1:6379,password=IhrPasswort
2. Form1.cs‑Hauptcode
Benötigtes NuGet‑Paket
StackExchange.Redis
Benötigte Namespaces
using StackExchange.Redis;
using System.Configuration;Code-Sprache: C# (cs)
public partial class Form1 : Form
{
// Redis‑Datenbank‑Arbeitsobjekt
private IDatabase db;
// Einlesen der Verbindungszeichenfolge aus Konfigurationsdatei
private string ConnectionString = ConfigurationManager.ConnectionStrings["RedisConnectionString"].ConnectionString;
// Multiplex‑Verbindung (offiziell empfohlenes Singleton, volatile für Thread‑Sicherheit)
private volatile IConnectionMultiplexer connection;
public Form1()
{
InitializeComponent();
// Verbindung aufbauen
connection = ConnectionMultiplexer.Connect(ConnectionString);
// Standard‑Datenbank Nummer 0 holen
db = connection.GetDatabase();
}
private void button1_Click(object sender, EventArgs e)
{
// Set‑Methode: Cache schreiben (Schlüssel, Wert, Ablauf in Sekunden)
bool res = Set(this.textBox1.Text, this.textBox2.Text, 1000);
if (res)
{
MessageBox.Show("Speichern erfolgreich");
}
else
{
MessageBox.Show("Speichern fehlgeschlagen");
}
}
/// <summary>
/// Redis‑String‑Schlüssel‑Wert schreiben (einfacher Wrapper)
/// </summary>
bool Set(string key, object data, int cacheTime)
{
if (string.IsNullOrEmpty(key)) return false;
// Ablaufzeit festlegen
var expire = TimeSpan.FromSeconds(cacheTime);
return db.StringSet(key, data.ToString(), expire);
}
}Code-Sprache: C# (cs)
Mit Redis verbinden
Previous: Redis‑Beispiel mit WinForms
Next: Wert schreiben