Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In diesem Quickstart verwenden Sie die Azure App Configuration, um Speicher und Verwaltung Ihrer App-Einstellungen für ein Aspire-Projekt zu externalisieren. Sie verwenden Azure App Configuration Aspire Integrationsbibliotheken, um eine App Configuration Resource bereitzustellen und App Configuration in jeder verteilten App zu verwenden.
Voraussetzungen
- Ein Azure-Konto mit einem aktiven Abonnement. Erstellen Sie ein kostenloses Konto.
- Richten Sie die Entwicklungsumgebung für Aspire ein. Ein C# AppHost benötigt das .NET 10 SDK.
- Installieren Sie die Aspire CLI.
- Erstellen Sie eine neue Aspire-Lösung mit der Vorlage "Aspire Starter".
- Für die Emulator-Schritte eine OCI-konforme Containerlaufzeit wie Docker Desktop.
Testen der App lokal
Die Vorlage "Aspire Starter" enthält eine Frontend-Web-App, die mit einem Minimal-API-Projekt kommuniziert. Das API-Projekt liefert gefälschte Wetterdaten an das Frontend. Die Frontend-App nutzt Service-Discovery, um sich mit dem API-Projekt zu verbinden. Ein AppHost orchestriert alle Ressourcen in der Aspire-Lösung.
Vom Lösungsroot aus starten Sie den AppHost:
aspire runSie sehen das Aspire-Dashboard in Ihrem Browser.
Klicken Sie auf die URL des Web-Frontends. Sie sehen eine Seite mit einer Willkommensnachricht.
Hinzufügen der Azure App-Konfiguration zur Aspire-Lösung
Geh ins AppHost-Verzeichnis. Führe folgenden Befehl aus, um das
Aspire.Hosting.Azure.AppConfigurationNuGet-Paket hinzuzufügen.aspire add Aspire.Hosting.Azure.AppConfigurationWeitere Informationen finden Sie unter
aspire addund Integration von Azure App Configuration-Hosting.Öffnen Sie die AppHost.cs Datei, und fügen Sie den folgenden Code hinzu.
var builder = DistributedApplication.CreateBuilder(args); // Add an Azure App Configuration resource var appConfiguration = builder.AddAzureAppConfiguration("appconfiguration");Von Bedeutung
Wenn Sie aufrufen
AddAzureAppConfiguration, weisen Sie die App an, Azure-Ressourcen während des App-Starts dynamisch zu generieren. Die App muss das entsprechende Abonnement und den entsprechenden Standort konfigurieren. Weitere Informationen finden Sie unter lokale Azure-Bereitstellung. Wenn Sie das neueste Aspire SDK verwenden, können Sie die Abonnementinformationen über das Aspire-Dashboard konfigurieren.
Hinweis
Ihnen muss im Azure-Abonnement entweder die Rolle Besitzer oder Benutzerzugriffsadministrator zugewiesen sein. Diese Rollen sind erforderlich, um Rollenzuweisungen im Rahmen des Bereitstellungsprozesses zu erstellen.
Tipp
Beziehen Sie sich auf einen bestehenden App Configuration Store, indem Sie dessen Name und Ressourcengruppe als Parameter an
AsExisting()übergeben:var storeName = builder.AddParameter("appConfigurationName"); var resourceGroup = builder.AddParameter("appConfigurationResourceGroup"); var appConfiguration = builder.AddAzureAppConfiguration("appconfiguration") .AsExisting(storeName, resourceGroup);Weitere Informationen finden Sie unter Use existing Azure resources.
Fügen Sie den Verweis der App-Konfigurationsressource hinzu, und konfigurieren Sie das
webfrontendProjekt so, dass es darauf wartet.builder.AddProject<Projects.AspireApp_Web>("webfrontend") .WithExternalHttpEndpoints() .WithHttpHealthCheck("/health") .WithReference(apiService) .WaitFor(apiService) .WithReference(appConfiguration) // reference the App Configuration resource .WaitFor(appConfiguration); // wait for the App Configuration resource to enter the Running state before starting the resourceFühren Sie im Stammverzeichnis der Lösung
aspire runaus. Du siehst, dass die Azure App Configuration-Ressource bereitgestellt wird.Warten Sie einige Minuten, und Sie sehen, dass die Azure App-Konfigurationsressource bereitgestellt und ausgeführt wird.
Wechseln Sie zum Azure-Portal, indem Sie auf die Bereitstellungs-URL im Aspire-Dashboard klicken. Sie sehen, dass die Bereitstellung abgeschlossen ist und Sie zu Ihrer Azure App-Konfigurationsressource wechseln können.
Einen Schlüsselwert hinzufügen
Fügen Sie ihrem App-Konfigurationsspeicher den folgenden Schlüsselwert hinzu, und lassen Sie "Bezeichnung " und "Inhaltstyp " mit ihren Standardwerten belassen. Weitere Informationen zum Hinzufügen von Schlüssel-Werten zu einem Speicher mithilfe des Azure-Portals oder der CLI finden Sie unter Erstellen eines Schlüssel-Werts.
| Key | Wert |
|---|---|
| TestApp:Settings:Message | Hallo aus Azure App-Konfiguration! |
Hinzufügen der Azure App-Konfiguration zur Aspire-Lösung
Geh ins AppHost-Verzeichnis . Führe folgenden Befehl aus, um das
Aspire.Hosting.Azure.AppConfigurationNuGet-Paket hinzuzufügen.aspire add Aspire.Hosting.Azure.AppConfigurationWeitere Informationen finden Sie unter
aspire addund Hostingintegration für Azure App Configuration.Öffnen Sie die AppHost.cs Datei, und fügen Sie den folgenden Code hinzu.
var builder = DistributedApplication.CreateBuilder(args); // Add an Azure App Configuration resource var appConfiguration = builder.AddAzureAppConfiguration("appconfiguration") .RunAsEmulator(emulator => { // use the App Configuration emulator emulator.WithDataBindMount(); });Von Bedeutung
Wenn Sie
RunAsEmulatoraufrufen, zieht es das App Configuration Emulator-Image und führt einen Container als App-Konfigurationsressource aus. Stellen Sie sicher, dass Sie über eine OCI-kompatible Containerlaufzeit auf Ihrem Computer verfügen. Für weitere Informationen besuchen Sie Aspire Container Runtime.Tipp
Sie können
WithDataBindMountoderWithDataVolumeaufrufen, um die Emulatorressource für beständigen Containerspeicher zu konfigurieren, sodass Sie Schlüsselwerte nicht jedes Mal neu erstellen müssen.Fügen Sie den Verweis der App-Konfigurationsressource hinzu, und konfigurieren Sie das
webfrontendProjekt so, dass es darauf wartet.builder.AddProject<Projects.AspireApp_Web>("webfrontend") .WithExternalHttpEndpoints() .WithHttpHealthCheck("/health") .WithReference(apiService) .WaitFor(apiService) .WithReference(appConfiguration) // reference the App Configuration resource .WaitFor(appConfiguration); // wait for the App Configuration resource to enter the Running state before starting the resourceStarten Sie die Containerruntime. In diesem Lernprogramm verwenden wir Docker Desktop.
Führen Sie im Stammverzeichnis der Lösung
aspire runaus. Wechseln Sie zum Aspire-Dashboard. Sie sehen, dass die Ressource des App-Konfigurationsemulators ausgeführt wird.Ein Container wird gestartet, um den App-Konfigurationsemulator auszuführen.
Einen Schlüsselwert hinzufügen
Klicken Sie auf die URL der
appconfigurationRessource. Die Benutzeroberfläche des App-Konfigurations-Emulators wird angezeigt.Klicken Sie auf die
CreateSchaltfläche in der oberen rechten Ecke.
Fügen Sie den folgenden Schlüsselwert hinzu.
Key Wert TestApp:Settings:Message Hallo aus Azure App-Konfiguration! Klicken Sie auf die Schaltfläche
Save.
Verwenden der App-Konfiguration in der Webanwendung
Geh ins Verzeichnis des
WebProjekts. Führe folgenden Befehl aus, um dasAspire.Microsoft.Extensions.Configuration.AzureAppConfigurationNuGet-Paket hinzuzufügen.dotnet add package Aspire.Microsoft.Extensions.Configuration.AzureAppConfigurationÖffnen Sie die datei Program.cs , und fügen Sie den folgenden Code hinzu.
var builder = WebApplication.CreateBuilder(args); // Use Azure App Configuration builder.AddAzureAppConfiguration("appconfiguration"); // use the resource name defined in the AppHost projectÖffnen Sie die Datei "Components/Pages/Home.razor ", und aktualisieren Sie sie mit dem folgenden Code.
@page "/" @inject IConfiguration Configuration <PageTitle>Home</PageTitle> <h1>Hello, world!</h1> @if (!string.IsNullOrWhiteSpace(message)) { <div class="alert alert-info">@message</div> } else { <div class="alert alert-info">Welcome to your new app.</div> } @code { private string? message; protected override void OnInitialized() { string? msg = Configuration["TestApp:Settings:Message"]; message = string.IsNullOrWhiteSpace(msg) ? null : msg; } }Stoppe den aktuellen
aspire runProzess, starteaspire runerneut und wähle dann die Web-Frontend-URL im Aspire-Dashboard aus.Sie sehen eine Seite mit einer Willkommensnachricht aus der Azure App-Konfiguration.
Weitere Informationen darüber, wie verbrauchende Anwendungen den App Configuration-Endpunkt empfangen und nutzen, finden Sie unter Connect to Azure App Configuration.
Nächste Schritte
In dieser Schnellstartanleitung führen Sie die folgenden Schritte aus:
- Eine Azure App-Konfigurationsressource wurde in einer Aspire-Lösung hinzugefügt.
- Lesen Sie Ihre Schlüsselwerte aus der Azure App-Konfiguration mit der App Configuration Aspire-Integrationsbibliothek.
- Zeigt eine Webseite mit den Einstellungen an, die Sie in Ihrer App-Konfiguration konfiguriert haben.
Um zu erfahren, wie Sie Ihre Aspire-App so konfigurieren, dass Konfigurationseinstellungen dynamisch aktualisiert werden, fahren Sie mit dem nächsten Lernprogramm fort.
Um zu erfahren, wie Sie Featurekennzeichnungen in Ihrer Aspire-App verwenden, fahren Sie mit dem nächsten Lernprogramm fort.
Wenn Sie mehr über den Azure App-Konfigurationsemulator erfahren möchten, fahren Sie mit dem folgenden Dokument fort.