Snabbstart: Använda Azure Cache for Redis med en ASP.NET Core-webbapp
I den här snabbstarten införlivar du Azure Cache for Redis i ett ASP.NET Core-webbprogram som ansluter till Azure Cache for Redis för att lagra och hämta data från cacheminnet.
Det finns också cachelagringsprovidrar i .NET Core. Information om hur du snabbt börjar använda Redis med minimala ändringar i din befintliga kod finns i:
- ASP.NET kärnprovider för utdatacache
- ASP.NET core Distributed Cachelagring provider
- ASP.NET redis-kärnsessionsprovider
Hoppa till koden på GitHub
Klona lagringsplatsen https://github.com/Azure-Samples/azure-cache-redis-samples/tree/main/quickstart/aspnet-core på GitHub.
Som ett nästa steg kan du se ett verkligt scenario med eShop-program som visar ASP.NET grundläggande cachelagringsproviders: ASP.NET core eShop med Redis cachelagringsproviders.
Funktioner som ingår:
- Redis Distribuerad Cachelagring
- Redis-sessionstillståndsprovider
Distributionsinstruktioner finns i README.md.
Förutsättningar
- Azure-prenumeration – skapa en kostnadsfritt
- .NET Core SDK
Skapa en cache
Om du vill skapa en cache loggar du in på Azure-portalen och väljer Skapa en resurs.
På sidan Nytt väljer du Databaser och sedan Azure Cache for Redis.
På sidan Ny Redis Cache konfigurerar du inställningarna för din nya cache.
Inställning Välj ett värde beskrivning Abonnemang Listrutan och välj din prenumeration. Prenumerationen som den nya Azure Cache for Redis-instansen ska skapas under. Resursgrupp Listrutan och välj en resursgrupp eller välj Skapa ny och ange ett nytt resursgruppsnamn. Namn på den resursgrupp där cacheminnet och andra resurser ska skapas. Genom att placera alla dina appresurser i en resursgrupp kan du enkelt hantera eller ta bort dem tillsammans. DNS-namn Ange ett unikt namn. Cachenamnet måste vara en sträng mellan 1 och 63 tecken som endast innehåller siffror, bokstäver eller bindestreck. Namnet måste börja och sluta med ett tal eller en bokstav och får inte innehålla bindestreck i följd. Värdnamnet för cacheinstansen är <DNS-namnet.redis.cache.windows.net>. Plats Listrutan och välj en plats. Välj en region nära andra tjänster som använder din cache. Cachetyp Listrutan och välj en nivå. Nivån avgör storlek, prestanda och funktioner som är tillgängliga för cacheminnet. Mer information finns i Översikt över Azure Cache for Redis. Välj fliken Nätverk eller välj knappen Nätverk längst ned på sidan.
På fliken Nätverk väljer du din anslutningsmetod.
Välj fliken Nästa: Avancerat eller välj knappen Nästa: Avancerat längst ned på sidan för att se fliken Avancerat .
- För Basic- eller Standard-cacheminnen växlar du markeringen för en icke-TLS-port. Du kan också välja om du vill aktivera Microsoft Entra-autentisering.
- För en Premium-cache konfigurerar du inställningarna för icke-TLS-port, klustring, hanterad identitet och datapersistence. Du kan också välja om du vill aktivera Microsoft Entra-autentisering.
Välj fliken Nästa: Taggar eller välj knappen Nästa: Taggar längst ned på sidan.
Du kan också ange namn och värde på fliken Taggar om du vill kategorisera resursen.
Välj Granska + skapa. Du kommer till fliken Granska + skapa där Azure verifierar din konfiguration.
När det gröna verifieringsmeddelandet har skickats väljer du Skapa.
Det tar en stund innan en cache skapas. Du kan övervaka förloppet på översiktssidan för Azure Cache for Redis. När Status visas som Körs är cachen redo att användas.
Hämta värdnamn, portar och åtkomstnycklar från Azure-portalen
För att ansluta din Azure Cache for Redis-server behöver cacheklienten värdnamnet, portarna och en nyckel för cachen. Vissa klienter kan hänvisa till dessa objekt med namn som skiljer sig något. Du kan hämta värdnamnet, portarna och nycklarna från Azure-portalen.
Om du vill hämta åtkomstnycklarna väljer du Autentisering på resursmenyn. Välj sedan fliken Åtkomstnycklar .
Om du vill hämta värdnamnet och portarna för cacheminnet väljer du Översikt på resursmenyn. Värdnamnet är av formatet DNS name.redis.cache.windows.net>.<
Anteckna VÄRDNAMN och den Primära åtkomstnyckeln. Du använder dessa värden senare för att konstruera cache Anslut ionshemligheten.
Lägg till en lokal hemlighet för anslutningssträng
I kommandofönstret kör du följande kommando för att lagra en ny hemlighet med namnet Cache Anslut ion, efter att ha ersatt platshållarna, inklusive vinkelparenteser, för cachenamnet och den primära åtkomstnyckeln:
dotnet user-secrets set CacheConnection "<cache name>.redis.cache.windows.net,abortConnect=false,ssl=true,allowAdmin=true,password=<primary-access-key>"
Anslut till cachen med Redis Anslut ion
Klassen RedisConnection
hanterar anslutningen till cacheminnet. Anslutningen görs i den här instruktionen i HomeController.cs
mappen Controllers:
_redisConnection = await _redisConnectionFactory;
I RedisConnection.cs
ser du att StackExchange.Redis
namnområdet läggs till i koden. Detta krävs för RedisConnection
klassen.
using StackExchange.Redis;
Koden RedisConnection
säkerställer att det alltid finns en felfri anslutning till cachen genom att hantera instansen ConnectionMultiplexer
från StackExchange.Redis
. Klassen RedisConnection
återskapar anslutningen när en anslutning går förlorad och det inte går att återansluta automatiskt.
Mer information finns i StackExchange.Redis och koden i en GitHub-lagringsplats.
Layoutvyer i exemplet
Startsideslayouten för det här exemplet lagras i filen _Layout.cshtml . Från den här sidan startar du själva cachetestningen genom att klicka på Azure Cache for Redis-testet från den här sidan.
Öppna Views\Shared\_Layout.cshtml.
Du bör se i
<div class="navbar-header">
:<a class="navbar-brand" asp-area="" asp-controller="Home" asp-action="RedisCache">Azure Cache for Redis Test</a>
Visa data från cachen
På startsidan väljer du Azure Cache for Redis Test för att se exempelutdata.
I Solution Explorer expanderar du mappen Vyer och högerklickar sedan på mappen Start.
Du bör se den här koden i filen RedisCache.cshtml .
@{ ViewBag.Title = "Azure Cache for Redis Test"; } <h2>@ViewBag.Title.</h2> <h3>@ViewBag.Message</h3> <br /><br /> <table border="1" cellpadding="10"> <tr> <th>Command</th> <th>Result</th> </tr> <tr> <td>@ViewBag.command1</td> <td><pre>@ViewBag.command1Result</pre></td> </tr> <tr> <td>@ViewBag.command2</td> <td><pre>@ViewBag.command2Result</pre></td> </tr> <tr> <td>@ViewBag.command3</td> <td><pre>@ViewBag.command3Result</pre></td> </tr> <tr> <td>@ViewBag.command4</td> <td><pre>@ViewBag.command4Result</pre></td> </tr> <tr> <td>@ViewBag.command5</td> <td><pre>@ViewBag.command5Result</pre></td> </tr> </table>
Köra appen lokalt
Kör följande kommando i ditt kommandofönster för att skapa appen:
dotnet build
Kör sedan appen med följande kommando:
dotnet run
Bläddra till
https://localhost:5001
i webbläsaren.Välj Azure Cache for Redis-test i navigeringsfältet på webbsidan för att testa cacheåtkomst.
Rensa resurser
Om du vill fortsätta att använda de resurser som du skapade i den här artikeln behåller du resursgruppen.
Om du är klar med resurserna kan du ta bort den Azure-resursgrupp som du skapade för att undvika avgifter.
Viktigt!
Att ta bort en resursgrupp kan inte ångras. När du tar bort en resursgrupp tas alla resurser som ingår i den bort permanent. Kontrollera att du inte av misstag tar bort fel resursgrupp eller resurser. Om du har skapat resurserna i en befintlig resursgrupp som innehåller resurser som du vill behålla kan du ta bort varje resurs individuellt i stället för att ta bort resursgruppen.
Ta bort en resursgrupp
Logga in på Azure-portalen och välj Resursgrupper.
Välj den resursgrupp som du vill ta bort.
Om det finns många resursgrupper använder du rutan Filter för alla fält... och skriver namnet på resursgruppen som du skapade för den här artikeln. Välj resursgruppen i resultatlistan.
Välj Ta bort resursgrupp.
Du blir ombedd att bekräfta borttagningen av resursgruppen. Skriv namnet på din resursgrupp för att bekräfta och välj sedan Ta bort.
Efter en liten stund tas resursgruppen och de resurser som finns i den bort.