ASP.NET das Kernprojekt startet, lautet die Standardausführungsreihenfolge: Host Host -> Lesekonfiguration -> Log-Einstellungen -> Registrierungsdienst (DI) -> Middleware hinzufügen -> WebHost-Zuhören -> Hintergrund-Arbeitsstart.
Das Laden und Auslesen der Konfigurationen befinden sich ganz am Anfang des Startprozesses. Microsofts Profil in ASP.NET Core:Der Hyperlink-Login ist sichtbar.
Rezension:
Die Host.CreateDefaultBuilder-Methode, stellen Sie die Standardkonfiguration der App in folgender Reihenfolge bereit:
- ChainedConfigurationProvider: Füge einen bestehenden als Quelle hinzu. Im Beispiel der Standardkonfiguration fügen Sie die Host-Konfiguration hinzu und setzen Sie sie als erste Quelle für die Anwendungskonfiguration.
- Nutze appsettings.json appsettings.json.
- Verwenden Sie den JSON-Konfigurationsanbieter über appsettings: JSON lieferte. Zum Beispiel App-Einstellungen. Production.json und App-Einstellungen. Development.json。
- App-Geheimnisse, wenn die App in der Umgebung läuft.
- Verwenden Sie Umgebungsvariablen, die Konfigurationsanbieter nutzen, um Umgebungsvariablen bereitzustellen.
- Die Verwendung des Kommandozeilenkonfigurationsanbieters erfolgt über Kommandozeilenparameter.
Der Quellcode ist wie folgt:
Quellcode-Adresse:Der Hyperlink-Login ist sichtbar.
Wie Sie im Code sehen können, ist die Priorität der Programmerfassungskonfiguration:appsettings.json -> appsettings.environment.json -> Umgebungsvariablen -> Kommandozeilenargumente。 Wir testen nach Priorität.
Erstellen Sie eine neue Konsolenmethode, um alle Konfigurationsinformationen zurückzugeben, der Code lautet wie folgt:
Zuerst appsettings.json die Konfigurationsdatei wie folgt:
Neue App-Einstellungen. Test.json Konfiguration wie folgt:
Versuche, das Projekt zu starten, und sieh dir die Konfiguration von WebConfig:Name und WebConfig:Date an, wie im folgenden Bild gezeigt:
{"Key":"WebConfig:Name","Value":"itsvse.com"},{"Key":"WebConfig:Date","Value":"2021"}
Immobilien lokalisieren ->launchSettings.jsonDatei die ASPNETCORE_ENVIRONMENT Umgebungskonfiguration auf Test ändern, wie folgt:
Zu diesem Zeitpunkt ist das VerfahrenIch werde die App-Einstellungen lesen. Test.json Konfiguration, versuche, das Projekt neu zu starten, findeWebConfig:Name 已经覆盖了, wie in der untenstehenden Abbildung dargestellt:
{"Key":"WebConfig:Name","Value":"itsvse.com test"},{"Key":"WebConfig:Date","Value":"2021"}
Ändere die launchSettings.json-Datei erneut und setze den Wert von WebConfig:Name über die Umgebungsvariable, der Code ist wie folgt:
Hinweis: Ändern Sie den Wert von WebConfig:Name für die Umgebungsvariable, der Variablenname: WebConfig__Name (Die Mitte ist durch einen doppelten Unterstrich getrennt)
Versuche, das Projekt neu zu starten und den Wert von WebConfig:Name zu finden,Sie wurde durch den Wert überschrieben, der von der Umgebungsvariable gesetzt wird, wie in der untenstehenden Abbildung dargestellt:
Versuche, den Standardwert über die Befehlszeile zu ändern und starte den Befehl wie folgt:
Wie unten gezeigt:
Teste die Priorität der Konfigurationsschlüssel mit Übung, und das war's.
|