首页 > 解决方案 > 在 .NET Core 2.0 WebAPI 的 azure webapp 中加载应用程序设置

问题描述

我有一个托管在 azure 中的 .NET Core 2 WebAPI 项目。我正在尝试加载存储在 Azure 门户中的 ApplicationSettings,以便我可以将详细信息安全地保存到我的存储库中。

我检索 AppSetting 的代码如下所示:

private DocumentClient CreateDocumentClient()
{
    var url = ConfigurationManager.AppSettings["DatabaseEndpoint"];
    var key = ConfigurationManager.AppSettings["DatabaseKey"];
    return new DocumentClient(new Uri(url), key);
}

我的理解是我需要将环境变量添加到配置中,但是我认为这在 .NET 核心的更高版本中已经发生了变化,所有各种教程和指南都在向我发送。

我相信我需要将其添加到 V2.0 中的 Program.cs 而不是 Startup 所以我尝试从这个更改:

public static IWebHost BuildWebHost(string[] args) =>
    WebHost.CreateDefaultBuilder(args)
        .UseStartup<Startup>()
        .Build();

对此:

public static IWebHost BuildWebHost(string[] args) =>
    WebHost.CreateDefaultBuilder(args)
        .ConfigureAppConfiguration((WebHostBuilderContext context, IConfigurationBuilder builder) =>
         {
             builder.Sources.Clear();
             builder.AddEnvironmentVariables();
         })
         .UseStartup<Startup>()
         .Build();

但这似乎也不起作用(值仍然为空)。我应该补充一点,我没有 appsettings.json 文件,因此没有像许多其他示例所示的那样包含它。

我在正确的地方吗?如何将 ApplicationSettings 从 azure 加载到我的应用程序中?

标签: c#azureconfigurationasp.net-core-2.0azure-webjobs

解决方案


推荐阅读