Cvičení – použití eShopu .NET Aspire

Dokončeno

K ilustraci kompletní a komplexní aplikace nativní pro cloud můžeme použít nejnovější referenční aplikaci eShop, která obsahuje zásobník .NET Aspire.

Představte si, že pracujete pro venkovní oblečení a vybavení společnosti. Váš vývojový tým spolupracuje s .NET Aspire na vytvoření nové webové aplikace eShop pro hlavní web určený pro zákazníky. Před nasazením chcete porozumět architektuře této aplikace a otestovat její funkce.

V této lekci nainstalujete .NET Aspire a její požadavky a pak pomocí aplikace eShop prozkoumáte a spustíte .NET Aspire.

Požadavky na instalaci

Požadavky pro toto cvičení .NET Aspire jsou:

  • .NET 8
  • Visual Studio 2022 Preview
  • Docker Desktop
  • Úloha .NET Aspire v sadě Visual Studio

Pokud jste už tyto aplikace nainstalovali, můžete přeskočit k prozkoumání aplikace eShop.

Instalace .NET 8

Postupujte podle tohoto odkazu na .NET 8 a vyberte správný instalační program pro váš operační systém. Pokud například používáte Windows 11 a moderní procesor, vyberte sadu x64 .NET 8 SDK pro Windows.

Po dokončení stahování spusťte instalační program a postupujte podle pokynů. V okně terminálu spusťte následující příkaz a ověřte, že instalace proběhla úspěšně:

dotnet --version

Měli byste vidět číslo verze sady .NET SDK, kterou jste nainstalovali. Příklad:

8.0.300-preview.24203.14

Instalace sady Visual Studio 2022 Preview

Postupujte podle tohoto odkazu sady Visual Studio 2022 Preview a vyberte Stáhnout verzi Preview. Po dokončení stahování spusťte instalační program a postupujte podle pokynů.

Instalace Docker Desktopu

Postupujte podle tohoto odkazu na Docker Desktop a vyberte správný instalační program pro váš operační systém. Po dokončení stahování spusťte instalační program a postupujte podle pokynů. Pro zajištění nejlepšího výkonu a kompatibility použijte back-end WSL 2.

Otevřete aplikaci Docker Desktop a přijměte smlouvu o poskytování služeb.

Instalace úlohy .NET Aspire v sadě Visual Studio

Nainstalujte úlohu .NET Aspire pomocí rozhraní příkazového řádku .NET:

  1. Otevřete terminál.

  2. Aktualizujte úlohy .NET pomocí tohoto příkazu:

    dotnet workload update
    

    Měla by se zobrazit zpráva, že se úlohy úspěšně aktualizovaly.

    No workloads installed for this feature band. To update workloads installed with earlier SDK versions, include the --from-previous-sdk option.
    Updated advertising manifest microsoft.net.sdk.ios.
    Updated advertising manifest microsoft.net.workload.mono.toolchain.net6.
    Updated advertising manifest microsoft.net.sdk.android.
    Updated advertising manifest microsoft.net.workload.emscripten.net7.
    Updated advertising manifest microsoft.net.workload.emscripten.net6.
    Updated advertising manifest microsoft.net.sdk.macos.
    Updated advertising manifest microsoft.net.workload.emscripten.current.
    Updated advertising manifest microsoft.net.workload.mono.toolchain.current.
    Updated advertising manifest microsoft.net.sdk.maui.
    Updated advertising manifest microsoft.net.workload.mono.toolchain.net7.
    Updated advertising manifest microsoft.net.sdk.maccatalyst.
    Updated advertising manifest microsoft.net.sdk.tvos.
    Updated advertising manifest microsoft.net.sdk.aspire.
    No workloads installed for this feature band. To update workloads installed with earlier SDK versions, include the --from-previous-sdk option.
    
    Successfully updated workload(s): .
    
  3. Pomocí tohoto příkazu nainstalujte úlohu .NET Aspire:

    dotnet workload install aspire
    

    Měla by se zobrazit zpráva, že byla nainstalovaná úloha .NET Aspire.

    Installing Aspire.Hosting.Sdk.Msi.x64 ...... Done
    Installing Aspire.ProjectTemplates.Msi.x64 ..... Done
    Installing Aspire.Hosting.Orchestration.win-x64.Msi.x64 ............. Done
    Installing Aspire.Hosting.Msi.x64 ..... Done
    Installing Aspire.Dashboard.Sdk.win-x64.Msi.x64 ....... Done
    
    Successfully installed workload(s) aspire.
    
  4. Pomocí tohoto příkazu ověřte, že je nainstalovaná úloha .NET Aspire:

    dotnet workload list
    

    Měli byste vidět podrobnosti o úloze aspirace.

    Installed Workload Id      Manifest Version      Installation Source
    ---------------------------------------------------------------------------------------------
    aspire                     8.0.0/8.0.100         SDK 8.0.300-preview.24203, VS 17.10.34902.84
    
    Use `dotnet workload search` to find additional workloads to install.
    

Prozkoumání kódu eShopu .NET Aspire

Pojďme použít referenční aplikaci eShop k předvedení zásobníku .NET Aspire. Kód naklonujeme z GitHubu a prozkoumáme ho v sadě Visual Studio:

  1. Na příkazovém řádku přejděte do složky podle vašeho výběru, kde můžete pracovat s kódem.

  2. Spuštěním následujícího příkazu naklonujte ukázkovou aplikaci eShop:

    git clone https://github.com/dotnet/eShop.git
    
  3. Spusťte Visual Studio a pak vyberte Otevřít projekt nebo řešení.

  4. Přejděte do složky, do které jste naklonovali eShop, vyberte soubor eShop.Web.snlf a pak vyberte Otevřít.

  5. Prozkoumejte strukturu řešení v Průzkumník řešení. Kód eShopu na nejvyšší úrovni obsahuje složky pro testy, akce GitHubu a položky řešení. Rozbalte složku src, která obsahuje zdrojový kód pro mikroslužby:

    Snímek obrazovky znázorňující strukturu řešení eShop v sadě Visual Studio Průzkumník řešení

  6. Všimněte si, že:

    • Složka src obsahuje projekty .NET Aspire AppHost a ServiceDefaults .
    • Projekt AppHost je nastaven jako spouštěný projekt pro řešení.
  7. Rozbalte projekt AppHost a vyberte soubor eShop.AppHost/Program.cs.

  8. V souboru Program.cs si všimněte, že:

    • Komponenty aplikace jsou přidány do objektu DistributedApplicationBuilder s názvem builder.
    • Do tvůrce se přidají služby zálohování, jako je mezipaměť Redis, služba zasílání zpráv RabbitMQ a databáze PostgreSQL. Každý z nich se zřídí v kontejneru Dockeru.
    • Každá mikroslužba se přidá do tvůrce pomocí builder.AddProject() metody.
    • Pomocí metody se do každé mikroslužby .WithReference() vloží odkazy na backingové služby.

Úprava kódu v obchodě .NET Aspire eShop

Při spuštění aplikace provedeme jednoduchou změnu ve zdrojovém kódu, která otestuje:

  1. V Průzkumník řešení rozbalte složku src/WebApp/Components/Pages/Catalog a pak vyberte stránku Catalog.razor.

  2. Vyhledejte tento řádek kódu:

    <SectionContent SectionName="page-header-subtitle">Start the season with the latest in clothing and equipment.</SectionContent>
    
  3. Řádek nahraďte tímto textem nebo vytvořte vlastní podnadpis stránky:

    <SectionContent SectionName="page-header-subtitle">Bringing you the latest in clothing and equipment.</SectionContent>
    

Spuštění eShopu .NET Aspire

Pojďme aplikaci spustit a pomocí řídicího panelu .NET Aspire prozkoumat požadavek:

  1. V sadě Visual Studio stiskněte klávesu F5 nebo v nabídce Ladění vyberte Spustit ladění. Visual Studio sestaví kontejnery pro eShop.

  2. Pokud se zobrazí dialogové okno Start Docker Desktop , vyberte Ano.

  3. Při sestavení a nasazení eShopu do Dockeru se řídicí panel .NET Aspire zobrazí ve výchozím prohlížeči.

  4. Pokud chcete přejít na domovskou stránku, vyberte v řádku projektu webové aplikace odkaz na https://localhost:<port> :

    Snímek obrazovky zobrazující řídicí panel .NET Aspire pro řešení eShop

  5. Domovská stránka eShopu se zobrazí na nové kartě prohlížeče. Všimněte si, že se zobrazí podnadpis.

  6. Vyberte produkt Adventurer GPS Watch:

    Snímek obrazovky znázorňující domovskou stránku webové aplikace eShop

  7. Přepněte na kartu prohlížeče, která zobrazuje řídicí panel .NET Aspire, a pak v nabídce vlevo vyberte Trasování.

  8. Přejděte do dolní části stránky a vyhledejte trasování s názvem webové aplikace: GET /item/{itemId:int}.

  9. Ve sloupci Podrobnosti vyberte Zobrazit:

    Snímek obrazovky zobrazující stránku Trasování na řídicím panelu .NET Aspire

  10. Na řídicím panelu se zobrazí trasování pro hodinky Adventurer GPS Watch, které zahrnují volání mikroslužby katalogu:

    Snímek obrazovky znázorňující trasování na řídicím panelu .NET Aspire

  11. Pokud chcete zastavit ladicí relaci, stiskněte v sadě Visual Studio kombinaci kláves Shift + F5 nebo v nabídce Ladění vyberte Zastavit ladění.

  12. Zavřete Visual Studio.

Další informace