Schnellstart: Erstellen einer ASP.NET Core-App mit Azure App Configuration
In dieser Schnellstartanleitung verwenden Sie Azure App Configuration, um die Speicherung und Verwaltung von App-Einstellungen für eine ASP.NET Core-App zu externalisieren. Mit ASP.NET Core wird ein Konfigurationsobjekt, das auf nur einem Schlüssel-Wert-Paar basiert, mit Einstellungen einer oder mehrerer Konfigurationsanbieter erstellt. App Configuration bietet eine .NET-Konfigurationsanbieterbibliothek. Daher können Sie App Configuration als zusätzliche Konfigurationsquelle für Ihre App verwenden. Wenn Sie über eine vorhandene App verfügen, müssen Sie nur einige kleine Änderungen an Ihrem App-Startcode vornehmen, um mit der Verwendung von App Configuration zu beginnen.
Voraussetzungen
- Ein Azure-Konto mit einem aktiven Abonnement. Erstellen Sie ein kostenloses Konto.
- Ein App Configuration-Speicher. Erstellen Sie einen Speicher.
- .NET SDK 6.0 oder höher
Tipp
Azure Cloud Shell ist eine kostenlose interaktive Shell, mit der Sie die Befehlszeilenanweisungen in diesem Artikel ausführen können. Für sie sind allgemeine Azure-Tools einschließlich des .NET SDK vorinstalliert. Wenn Sie bei Ihrem Azure-Abonnement angemeldet sind, starten Sie Azure Cloud Shell über shell.azure.com. Weitere Informationen zu Azure Cloud Shell finden Sie in der Dokumentation.
Schlüsselwerte hinzufügen
Fügen Sie dem App Configuration-Speicher die folgenden Schlüsselwerte hinzu, und belassen Sie Bezeichnung und Inhaltstyp bei ihren Standardwerten. Weitere Informationen zum Hinzufügen von Schlüssel-Wert-Paaren zu einem Speicher mithilfe des Azure-Portals oder der CLI finden Sie unter Erstellen eines Schlüssel-Wert-Paars.
Schlüssel | Wert |
---|---|
TestApp:Settings:BackgroundColor | weiß |
TestApp:Settings:FontColor | schwarz |
TestApp:Settings:FontSize | 24 |
TestApp:Settings:Message | Daten aus Azure App Configuration |
Erstellen einer ASP.NET Core-Web-App
Verwenden Sie die .NET-Befehlszeilenschnittstelle (Command Line Interface, CLI), um ein neues ASP.NET Core-Web-App-Projekt zu erstellen. Die Azure Cloud Shell stellt Ihnen diese Tools zur Verfügung. Sie sind auch auf der Windows-, macOS- und Linux-Plattform verfügbar.
Führen Sie den folgenden Befehl aus, um eine ASP.NET Core-Web-App in einem neuen Ordner TestAppConfig zu erstellen:
dotnet new webapp --output TestAppConfig --framework net6.0
Herstellen einer Verbindung mit dem App Configuration-Speicher
Navigieren Sie zum Verzeichnis TestAppConfig des Projekts, und führen Sie den folgenden Befehl aus, um einen Verweis auf das NuGet-Paket Microsoft.Azure.AppConfiguration.AspNetCore hinzuzufügen:
dotnet add package Microsoft.Azure.AppConfiguration.AspNetCore
Führen Sie den folgenden Befehl aus. Der Befehl verwendet den Geheimnis-Manager, um ein Geheimnis namens
ConnectionStrings:AppConfig
zu speichern, das die Verbindungszeichenfolge für Ihren App Configuration-Speicher speichert. Ersetzen Sie den Platzhalterwert<your_connection_string>
durch die Verbindungszeichenfolge Ihres App Configuration-Speichers. Die Verbindungszeichenfolge finden Sie im Azure-Portal unter Zugriffsschlüssel Ihres App Configuration-Speichers.dotnet user-secrets init dotnet user-secrets set ConnectionStrings:AppConfig "<your_connection_string>"
Tipp
Einige Shells kürzen die Verbindungszeichenfolge, sofern Sie nicht in Anführungszeichen eingeschlossen ist. Stellen Sie sicher, dass die Ausgabe des
dotnet user-secrets list
-Befehls die gesamte Verbindungszeichenfolge anzeigt. Wenn dies nicht der Fall ist, führen Sie den Befehl erneut aus und schließen die Verbindungszeichenfolge in Anführungszeichen ein.Der Geheimnis-Manager speichert den geheimen Schlüssel außerhalb Ihrer Projektstruktur. Dadurch wird die versehentliche Freigabe von Geheimnissen innerhalb des Quellcodes verhindert. Er wird nur verwendet, um die Web-App lokal zu testen. Wenn die App in Azure-Diensten wie App Service bereitgestellt wird, verwenden Sie die Verbindungszeichenfolgen, Anwendungseinstellungen oder Umgebungsvariablen, um die Verbindungszeichenfolge zu speichern. Alternativ können Sie eine Verbindung mit App Configuration mithilfe verwalteter Identitäten oder Ihrer anderen Microsoft Entra-Identitäten herstellen, um Verbindungszeichenfolgen ganz zu vermeiden.
Öffnen Sie Program.cs, und fügen Sie Azure App Configuration als zusätzliche Konfigurationsquelle hinzu, indem Sie die Methode
AddAzureAppConfiguration
aufrufen.var builder = WebApplication.CreateBuilder(args); // Retrieve the connection string string connectionString = builder.Configuration.GetConnectionString("AppConfig"); // Load configuration from Azure App Configuration builder.Configuration.AddAzureAppConfiguration(connectionString); // The rest of existing code in program.cs // ... ...
Dieser Code stellt mithilfe einer Verbindungszeichenfolge eine Verbindung mit Ihrem App Configuration-Speicher her und lädt alle Schlüsselwerte ohne Bezeichnungen. Weitere Informationen zum App Configuration-Anbieter finden Sie in der API-Referenz für App Configuration-Anbieter.
Lesen aus dem App Configuration-Speicher
In diesem Beispiel aktualisieren Sie eine Webseite, um ihren Inhalt mithilfe der Einstellungen anzuzeigen, die Sie in Ihrem App Configuration-Speicher konfiguriert haben.
Fügen Sie die Datei Settings.cs im Stammverzeichnis Ihres Projekts hinzu. Sie definiert eine stark typisierte
Settings
-Klasse für die von Ihnen verwendete Konfiguration. Ersetzen Sie den Namespace durch den Namen Ihres Projekts.namespace TestAppConfig { public class Settings { public string BackgroundColor { get; set; } public long FontSize { get; set; } public string FontColor { get; set; } public string Message { get; set; } } }
Binden Sie den Abschnitt
TestApp:Settings
in der Konfiguration an dasSettings
-Objekt.Aktualisieren Sie Program.cs mit dem folgenden Code, und fügen Sie den
TestAppConfig
-Namespace am Anfang der Datei hinzu.using TestAppConfig; // Existing code in Program.cs // ... ... builder.Services.AddRazorPages(); // Bind configuration "TestApp:Settings" section to the Settings object builder.Services.Configure<Settings>(builder.Configuration.GetSection("TestApp:Settings")); var app = builder.Build(); // The rest of existing code in program.cs // ... ...
Öffnen Sie Index.cshtml.cs im Verzeichnis Pages, und aktualisieren Sie die
IndexModel
-Klasse mit dem folgenden Code. Fügen Sie am Anfang der Datei den Namespaceusing Microsoft.Extensions.Options
hinzu, sofern noch nicht vorhanden.public class IndexModel : PageModel { private readonly ILogger<IndexModel> _logger; public Settings Settings { get; } public IndexModel(IOptionsSnapshot<Settings> options, ILogger<IndexModel> logger) { Settings = options.Value; _logger = logger; } }
Öffnen Sie Index.cshtml im Verzeichnis Pages, und aktualisieren Sie den Inhalt mit dem folgenden Code:
@page @model IndexModel @{ ViewData["Title"] = "Home page"; } <style> body { background-color: @Model.Settings.BackgroundColor; } h1 { color: @Model.Settings.FontColor; font-size: @(Model.Settings.FontSize)px; } </style> <h1>@Model.Settings.Message</h1>
Lokales Erstellen und Ausführen der App
Um die App mit der .NET-CLI zu erstellen, navigieren Sie zum Stammverzeichnis Ihres Projekts. Führen Sie den folgenden Befehl in der Befehlsshell aus:
dotnet build
Führen Sie nach erfolgreicher Erstellung den folgenden Befehl aus, um die Web-App lokal auszuführen:
dotnet run
Die Ausgabe des
dotnet run
-Befehls enthält zwei URLs. Öffnen Sie einen Browser, und navigieren Sie zu einer dieser URLs, um auf Ihre Anwendung zuzugreifen. Beispiel:https://localhost:5001
.Wenn Sie in der Azure Cloud Shell arbeiten, wählen Sie die Schaltfläche Webvorschau und dann Konfigurieren aus. Wenn Sie zum Konfigurieren des Ports für die Vorschau aufgefordert werden, geben Sie 5000 ein, und wählen Sie Öffnen und durchsuchen aus.
Die Webseite sieht wie folgt aus:
Bereinigen von Ressourcen
Wenn Sie die in diesem Artikel erstellten Ressourcen nicht mehr verwenden möchten, löschen Sie die erstellte Ressourcengruppe, um Kosten zu vermeiden.
Wichtig
Das Löschen einer Ressourcengruppe kann nicht rückgängig gemacht werden. Die Ressourcengruppe und alle darin enthaltenen Ressourcen werden unwiderruflich gelöscht. Achten Sie daher darauf, dass Sie nicht versehentlich die falsche Ressourcengruppe oder die falschen Ressourcen löschen. Falls Sie die Ressourcen für diesen Artikel in einer Ressourcengruppe erstellt haben, die andere beizubehaltende Ressourcen enthält, löschen Sie die Ressourcen einzeln über den entsprechenden Bereich, statt die Ressourcengruppe zu löschen.
- Melden Sie sich beim Azure-Portal an, und klicken Sie auf Ressourcengruppen.
- Geben Sie im Feld Nach Name filtern den Namen Ihrer Ressourcengruppe ein.
- Wählen Sie in der Ergebnisliste den Ressourcengruppennamen aus, um eine Übersicht anzuzeigen.
- Wählen Sie die Option Ressourcengruppe löschen.
- Sie werden aufgefordert, das Löschen der Ressourcengruppe zu bestätigen. Geben Sie zur Bestätigung den Namen Ihrer Ressourcengruppe ein, und klicken Sie auf Löschen.
Daraufhin werden die Ressourcengruppe und alle darin enthaltenen Ressourcen gelöscht.
Nächste Schritte
In dieser Schnellstartanleitung führen Sie die folgenden Schritte aus:
- Bereitstellen eines neuen App Configuration-Speichers.
- Herstellen einer Verbindung mit Ihrem App Configuration-Speicher mithilfe der App Configuration-Anbieterbibliothek
- Lesen der Schlüsselwerte Ihres App Configuration-Speichers mit der Konfigurationsanbieterbibliothek
- Anzeigen einer Webseite mit den Einstellungen, die Sie in Ihrem App Configuration-Speicher konfiguriert haben
Fahren Sie mit dem nächsten Tutorial fort, um zu erfahren, wie Sie Ihre ASP.NET Core-Web-App für das dynamische Aktualisieren der Konfigurationseinstellungen konfigurieren: