Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Mnoho aplikací musí používat různé konfigurace pro různá prostředí. Předpokládejme, že aplikace má konfigurační hodnotu, která definuje koncový bod, který se má použít pro svou back-endovou databázi. Vývojáři aplikací používají jinou databázi než databázi používanou v produkčním prostředí. Koncový bod databáze, který aplikace používá, se musí při přechodu aplikace z vývoje do produkčního prostředí změnit.
V Azure App Configuration můžete pomocí popisků definovat různé hodnoty pro stejný klíč. Můžete například definovat jeden klíč s různými hodnotami pro vývoj a produkci. Můžete určit, který štítek se má načíst při připojení ke službě App Configuration.
Abyste si mohli tuto funkci předvést, upravíte webovou aplikaci vytvořenou v rychlém startu: Vytvoříte aplikaci ASP.NET Core s Azure App Configuration , abyste použili různá nastavení konfigurace pro vývoj a produkční prostředí. Než budete pokračovat, dokončete rychlý start.
Zadejte popisek při přidávání hodnoty konfigurace
Na webu Azure Portal přejděte do Průzkumníka konfigurace a vyhledejte klíč TestApp:Settings:FontColor , který jste vytvořili v rychlém startu. Vyberte místní nabídku a pak vyberte Přidat hodnotu.
Na obrazovce Přidat hodnotu zadejte hodnotučervenou a popisekvývoje. Nechejte typ obsahu prázdný. Vyberte a použijte.
Načtení hodnot konfigurace se zadaným popiskem
Ve výchozím nastavení azure App Configuration načítá pouze hodnoty konfigurace bez popisku. Pokud jste definovali popisky hodnot konfigurace, budete chtít určit popisky, které se mají použít při připojování ke službě App Configuration.
V předchozí části jste pro vývojové prostředí vytvořili jinou hodnotu konfigurace. Proměnnou HostingEnvironment.EnvironmentName použijete k dynamickému určení prostředí, ve kterém se aplikace právě spouští. Další informace najdete v tématu Použití více prostředí v ASP.NET Core.
Pokud chcete získat přístup ke třídám KeyFilter a LabelFilter, přidejte odkaz na obor názvů Microsoft.Extensions.Configuration.AzureAppConfiguration.
using Microsoft.Extensions.Configuration.AzureAppConfiguration;
Načtěte hodnoty konfigurace s popiskem odpovídajícím aktuálnímu prostředí předáním názvu prostředí do Select metody:
var builder = WebApplication.CreateBuilder(args);
builder.Configuration.AddAzureAppConfiguration(options =>
{
string endpoint = Environment.GetEnvironmentVariable("Endpoint");
options.Connect(new Uri(endpoint), new DefaultAzureCredential())
// Load configuration values with no label
.Select(KeyFilter.Any, LabelFilter.Null)
// Override with any configuration values specific to current hosting env
.Select(KeyFilter.Any, builder.Environment.EnvironmentName);
});
Metoda Select se volá dvakrát. Poprvé načte konfigurační hodnoty bez označení. Potom načte konfigurační hodnoty s popiskem odpovídajícím aktuálnímu prostředí. Hodnoty specifické pro prostředí přebijí všechny odpovídající hodnoty bez popisku. Pro každý klíč nemusíte definovat hodnoty specifické pro prostředí. Pokud klíč nemá hodnotu s popiskem odpovídajícím aktuálnímu prostředí, použije hodnotu bez popisku.
Testování v různých prostředích
launchSettings.json Otevřete soubor v adresářiProperties.
config Vyhledejte položku v části profiles. V části environmentVariables nastavte proměnnou ASPNETCORE_ENVIRONMENT na Production.
S novou sadou hodnot sestavte a spusťte aplikaci.
dotnet build
dotnet run
Pomocí webového prohlížeče přejděte na http://localhost:5000. Všimněte si, že barva písma je černá.
Aktualizujte launchSettings.json, aby byla proměnná ASPNETCORE_ENVIRONMENT nastavena na Development. Spusťte dotnet run znovu.
Všimněte si, že barva písma je teď červená. Důvodem je, že aplikace teď používá hodnotu TestApp:Settings:FontColor, která má popisek Development. Všechny ostatní hodnoty konfigurace zůstanou stejné jako jejich produkční hodnoty.
Další kroky
Konfigurace v ASP.NET Core