Exercice - Connecter une application à Azure Cache pour Redis à l’aide de .NET Core

Effectué

Dans cet exercice, vous apprenez à effectuer les opérations suivantes :

  • Créez une instance de cache Redis à l’aide des commandes Azure CLI.
  • Créez une application console .NET Core pour ajouter et récupérer des valeurs à partir du cache à l’aide du package StackExchange.Redis.

Prérequis

Créer des ressources Azure

  1. Connectez-vous au portail : https://portal.azure.com et ouvrez Cloud Shell, puis sélectionnez Bash comme shell.

  2. Créez un groupe de ressources pour les ressources Azure. Remplacez <myLocation> par une région près de vous.

    az group create --name az204-redis-rg --location <myLocation>
    
  3. Créez une instance Azure Cache pour Redis à l’aide de la commande az redis create. Le nom de l’instance doit être unique et le script ci-dessous tentera d’en générer un pour vous, remplacez <myLocation> par la région que vous avez utilisée à l’étape précédente. L’exécution de cette commande prend quelques minutes.

    redisName=az204redis$RANDOM
    az redis create --location <myLocation> \
        --resource-group az204-redis-rg \
        --name $redisName \
        --sku Basic --vm-size c0
    
  4. Dans le portail Azure, accédez au cache Redis que vous avez créé.

  5. Sélectionnez Clés d’accès dans la section Paramètres du volet de Navigation et laissez le portail ouvert. Copiez la valeur de la chaîne de connexion principale (StackExchange.Redis) à utiliser plus tard dans l’application.

Création d'application console

  1. Créez une application console en exécutant la commande ci-dessous dans le terminal Visual Studio Code.

    dotnet new console -o Rediscache
    
  2. Ouvrez l’application dans Visual Studio Code en sélectionnant Fichier > Ouvrir le dossier et en choisissant le dossier de l’application.

  3. Ajoutez le package StackExchange.Redis au projet.

    dotnet add package StackExchange.Redis
    
  4. Supprimez tout code existant dans le fichier Program.cs, puis ajoutez l’instruction using suivante au début.

    using StackExchange.Redis;
    
  5. Ajoutez la variable suivante après l’instruction using, remplacez <REDIS_CONNECTION_STRING> par la chaîne de connexion principale (StackExchange.Redis) du portail.

    // connection string to your Redis Cache    
    string connectionString = "REDIS_CONNECTION_STRING";
    
  6. Ajoutez le code suivant au fichier Program.cs :

    using (var cache = ConnectionMultiplexer.Connect(connectionString))
    {
        IDatabase db = cache.GetDatabase();
    
        // Snippet below executes a PING to test the server connection
        var result = await db.ExecuteAsync("ping");
        Console.WriteLine($"PING = {result.Type} : {result}");
    
        // Call StringSetAsync on the IDatabase object to set the key "test:key" to the value "100"
        bool setValue = await db.StringSetAsync("test:key", "100");
        Console.WriteLine($"SET: {setValue}");
    
        // StringGetAsync retrieves the value for the "test" key
        string getValue = await db.StringGetAsync("test:key");
        Console.WriteLine($"GET: {getValue}");
    }
    
  7. Dans le terminal Visual Studio Code, exécutez les commandes ci-dessous pour générer l’application afin de rechercher les erreurs, puis exécutez l’application à l’aide des commandes ci-dessous

    dotnet build
    dotnet run
    

    La sortie doit ressembler à ce qui suit :

    PING = SimpleString : PONG
    SET: True
    GET: 100
    
  8. Revenez au portail et sélectionnez Journal d’activité dans le panneau Azure Cache pour Redis. Vous pouvez afficher les opérations dans le journal.

Nettoyer les ressources

Lorsque les ressources ne sont plus nécessaires, vous pouvez utiliser la commande az group delete pour supprimer le groupe de ressources.

az group delete -n az204-redis-rg --no-wait