Zjistěte, jak vytvořit nový projekt .NET Aspire.
Vývoj nativní pro cloud může vyžadovat, aby vývojáři spojili různé mikroslužby, jako jsou databáze, fronty zasílání zpráv a mezipaměti. .NET Aspire tento proces zjednodušuje tím, že poskytuje sadu šablon, které můžete použít k vytvoření a správě připojení mezi těmito službami.
V této lekci se dozvíte, jak vytvořit nový projekt .NET Aspire a pochopit rozdíly mezi dvěma počátečními šablonami projektů. Pak prozkoumejte strukturu vygenerovaného řešení.
Požadavky na .NET Aspire
Než budete moct vytvořit nový projekt .NET Aspire, musíte nainstalovat místně některé požadavky:
- .NET 8
- Visual Studio 2022 Preview
- Docker Desktop nebo Podman
- Úloha .NET Aspire v sadě Visual Studio
V dalším cvičení si projdete kroky pro instalaci těchto požadavků.
Volba nejlepší šablony .NET Aspire pro váš projekt
V současné době jsou k dispozici dvě úvodní šablony .NET Aspire:
Aplikace .NET Aspire: Tato šablona je dobrým výchozím bodem pro nové projekty. Zahrnuje pouze projekty AspireSample.AppHost a AspireSample.ServiceDefaults . Tato šablona je užitečná, když chcete začít od začátku a přidat vlastní komponenty a služby.
.NET Aspire Starter Application: Tato šablona zahrnuje projekty AspireSample.AppHost a AspireSample.ServiceDefaults , ale obsahuje také příklad Blazor App AspireSample.Web a rozhraní API, které poskytuje data pro něj AspireSample.ApiService. Tyto projekty jsou předem nakonfigurované pomocí zjišťování služeb a další základní příklady běžných funkcí .NET Aspire.
Obě šablony Aspire poskytují řídicí panel pro monitorování stavu služeb a provozu mezi nimi. Řídicí panel pomáhá zlepšit místní vývojové prostředí – na první pohled vám poskytne přehled o stavu a struktuře vaší aplikace.
K dispozici jsou také tři šablony projektů:
- .NET Aspire App Host: Šablona, která obsahuje jenom projekt hostitele aplikace (orchestrátor).
- Výchozí nastavení služby .NET Aspire: Šablona, která obsahuje pouze projekt výchozích hodnot služby.
- Projekt testů .NET Aspire: Šablona, která obsahuje pouze testy jednotek pro projekt hostitele aplikace.
Vytvoření nového projektu .NET Aspire pomocí šablony .NET Aspire
Pomocí dialogového okna Pro spuštění sady Visual Studio můžete vytvořit nový projekt .NET Aspire nebo Soubor>>projekt. Můžete také použít příkazy .NET CLI. K vytvoření řešení pomocí šablony aplikace .NET Aspire byste použili tento příkaz:
dotnet new aspire
Nebo pokud chcete použít šablonu úvodní aplikace .NET Aspire, použili byste tento příkaz:
dotnet new aspire-starter
Výhodou používání sady Visual Studio je volba možností konfigurace prostřednictvím dialogových oken. Příkazy rozhraní příkazového řádku .NET jsou užitečné, když chcete vytvořit nový projekt .NET Aspire s výchozím nastavením, ale výchozí nastavení můžete změnit pomocí volitelných příznaků. V dalším cvičení se dozvíte, jak vytvořit nový projekt .NET Aspire pomocí obou metod.
Prozkoumání struktury řešení generovaných šablonami .NET Aspire
Šablony .NET Aspire generují řešení s konkrétní strukturou. Tato struktura je zjednodušený diagram pro úvodní aplikaci bez povolených možností ukládání do mezipaměti nebo testování:
────📂 AspireSample
├───📂 AspireSample.ApiService
│ ├───📂 Properties
│ │ └─── launchSettings.json
│ ├─── appsettings.json
│ ├─── AspireSample.ApiService.csproj
│ └─── Program.cs
├───📂 AspireSample.AppHost
│ ├───📂 Properties
│ │ └─── launchSettings.json
│ ├─── appsettings.json
│ ├─── AspireSample.AppHost.csproj
│ └─── Program.cs
├───📂 AspireSample.ServiceDefaults
│ ├─── AspireSample.ServiceDefaults.csproj
│ └─── Extensions.cs
├───📂 AspireSample.Web
│ ├───📂 Components
│ │ ├───📂 Layout
│ │ │ ├─── ...
│ │ ├───📂 Pages
│ │ │ ├─── ...
│ │ ├─── ...
│ ├───📂 Properties
│ │ └─── launchSettings.json
│ ├───📂 wwwroot
│ │ ├───...
│ ├─── appsettings.json
│ ├─── AspireSample.Web.csproj
│ ├─── Program.cs
│ └─── WeatherApiClient.cs
└─── AspireSample.sln
Obě šablony přidávají projekty AppHost a ServiceDefaults . Tyto projekty jsou jádrem aplikace vytvořené pomocí .NET Aspire. Projekt AppHost je vstupním bodem a zodpovídá za činnost orchestrátoru.
Projekt ServiceDefaults obsahuje výchozí konfiguraci aplikace. Tyto konfigurace se znovu používají ve všech projektech ve vašem řešení.
Výše uvedené řešení také zahrnuje projekty Web a ApiService . Webový projekt je aplikace Blazor WebAssembly, která má čítač a volá službu ApiService pro získání dat prognózy. ApiService je jednoduché rozhraní API, které vrací data prognózy.
Projděte si strukturu kódu.
Projekt AspireSample.AppHost má v Program.cs následující kód:
var builder = DistributedApplication.CreateBuilder(args);
var cache = builder.AddRedis("cache");
var apiService = builder.AddProject<Projects.AspireStarterSample_ApiService>("apiservice");
builder.AddProject<Projects.AspireStarterSample_Web>("webfrontend")
.WithReference(cache)
.WithReference(apiService);
builder.Build().Run();
Procházení výše uvedeného kódu, řádek po řádku:
Vytvořte proměnnou
builder
, která je .IDistributedApplicationBuilder
Vytvořte proměnnou
cache
, která je .IResourceBuilder<RedisResource>
Volání
AddProject
s parametrem obecného typu obsahujícím podrobnosti projektu a přidáním projektuIServiceMetadata
AspireSample.ApiService do aplikačního modelu.Toto je základní stavební blok rozhraní .NET Aspire. Konfiguruje
AddProject
zjišťování služeb a komunikaci mezi projekty ve vaší aplikaci. Služba apiservice argumentu názvu slouží k identifikaci projektu v aplikačním modelu a později je používají projekty, které s ním chtějí komunikovat.Znovu volá
AddProject
, tentokrát přidání projektu AspireSample.Web do aplikačního modelu. Zřetědí také několik volání proWithReference
předávání proměnných mezipaměti a služby apiservice .Rozhraní
WithReference
API je dalším základním rozhraním API rozhraní .NET Aspire, které vkládá informace o zjišťování služby nebo připojovací řetězec konfiguraci do projektu, který se přidává do aplikačního modelu.builder
Nakonec voláníBuild
aRun
spuštění aplikace.