Exercício – Conectar um aplicativo para Cache do Azure para Redis usando o .NET Core

Concluído

Nesse exercício, você aprenderá a:

  • Crie uma nova instância de Cache Redis usando os comandos da CLI do Azure.
  • Crie um aplicativo de console do .NET Core para adicionar e recuperar valores do cache usando o pacote StackExchange.Redis.

Pré-requisitos

Criar recursos do Azure

  1. Entre no portal: https://portal.azure.com, abra o Cloud Shell e selecione Bash como o shell.

  2. Crie um grupo de recursos para os recursos do Azure. Substitua <myLocation> por uma região perto de você.

    az group create --name az204-redis-rg --location <myLocation>
    
  3. Crie uma instância do Cache do Azure para Redis usando o comando az redis create. O nome da instância precisa ser exclusivo e o script a seguir tenta gerar um para você – substitua <myLocation> pela região usada na etapa anterior. Esse comando leva alguns minutos para ser concluído.

    redisName=az204redis$RANDOM
    az redis create --location <myLocation> \
        --resource-group az204-redis-rg \
        --name $redisName \
        --sku Basic --vm-size c0
    
  4. No portal do Azure, navegue até o novo Cache Redis que você criou.

  5. Selecione Chaves de acesso na seção Configurações/Autenticação do Painel de Navegação e deixe o portal aberto. Copiaremos o valor da Cadeia de conexão primária (StackExchange.Redis) para usar no aplicativo posteriormente.

Criar o aplicativo de console

  1. Crie um aplicativo de console executando o comando a seguir no terminal do Visual Studio Code.

    dotnet new console -o Rediscache
    
  2. Abra o aplicativo no Visual Studio Code selecionando Arquivo > Abrir Pasta e escolhendo a pasta do aplicativo.

  3. Adicione o pacote StackExchange.Redis ao projeto.

    dotnet add package StackExchange.Redis
    
  4. Exclua qualquer código existente no arquivo Program.cs e adicione a instrução using a seguir na parte superior.

    using StackExchange.Redis;
    
  5. Adicione a variável a seguir após a instrução using, substitua <REDIS_CONNECTION_STRING> pela Cadeia de conexão primária (StackExchange.Redis) do portal.

    // connection string to your Redis Cache    
    string connectionString = "REDIS_CONNECTION_STRING";
    
  6. Acrescente o seguinte código no arquivo 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.Resp2Type} : {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. No terminal do Visual Studio Code, execute os comandos a seguir para compilar e executar o aplicativo.

    dotnet build
    dotnet run
    

    A saída deve ser semelhante ao seguinte exemplo:

    PING = SimpleString : PONG
    SET: True
    GET: 100
    
  8. Retorne ao portal e selecione Log de atividades na folha Cache do Azure para Redis. Você pode exibir as operações no log.

Limpar os recursos

Quando os recursos não forem mais necessários, você poderá usar o comando az group delete para remover o grupo de recursos.

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