Skip to main content

.NET and Redis


Profile picture for Steve Lorello
Author:
Steve Lorello, .NET Developer Advocate at Redis

Getting Started

The .NET Community has built many client libraries to help handle requests to Redis Server. In this guide, we'll mostly be concerned with using the StackExchange.Redis client library. As the name implies the StackExchange client is developed by StackExchange for use on popular websites like StackOverflow.

Step 1. Install the Package

There are a few ways to Install the Package:

Run the following in the directory of the csproj file you want to add the package too.

  dotnet add package StackExchange.Redis

Step 2. Import the Required Namespace

using StackExchange.Redis;

Step 3. Initialize the ConnectionMultiplexer

The ConnectionMultiplexer is the main arbiter of the connection to Redis inside the CLR, your application should maintain a single instance of the ConnectionMultiplexer throughout its runtime. You can initialize the Multiplexer with either a connection string, or with a ConfigurationOptions object. A typical connection string is of the form: HOST_NAME:PORT_NUMBER,password=PASSWORD where HOST_NAME is the host name of your server (e.g. localhost), PORT_NUMBER is the port number Redis is listening on (e.g. 6379) and PASSWORD is your redis server's password (e.g. secret_password).

static readonly ConnectionMultiplexer _redis = ConnectionMultiplexer.Connect($"{HOST_NAME}:{PORT_NUMBER},password={PASSWORD}");

Step 4. Grab Database Connection

Once we have a handle for the Multiplexer, we need get a connection to the database.

var db = _redis.GetDatabase();

Step 5. Use the connection

Now that you've retreived the connection to the database, all that's left is to use it. Here are some simple operations:

db.Ping();

Redis Launchpad

Redis Launchpad is like an “App Store” for Redis sample apps. You can easily find apps for your preferred frameworks and languages. Check out a few of these apps below, or click here to access the complete list.

Rate Limiting App in .NET

Launchpad

Leaderboard App in .NET

Launchpad

API Caching .NET

Launchpad

Basic Chat App .NET

Launchpad

Additional Resources