1

我需要以编程方式将新的应用程序设置添加到 azure 函数,而无需在每次引入新设置时从 azure 门户手动添加。是否有任何 nuget 包或某些工具可用于自动化此操作?

这个想法是,当我们从一个环境部署到另一个环境时,可以自动执行此过程,而无需手动执行此操作。

提前致谢。

4

2 回答 2

1

听起来您只是想要一个工具来添加或更新应用程序设置,而无需通过门户手动执行?我推荐azure cli作为一个不错的选择。通过ARM 模板也可以。我们经常看到用户将这些选项与 Azure DevOps 等工具结合使用来自动化和管理多个环境。

于 2019-09-14T21:04:27.843 回答
1

使用包中包含的 .Net 核心配置管理样式Microsoft.Extensions.Configuration。该local.settings.json文件不会发布到 Azure,而是 Azure 将从与函数关联的应用程序设置中获取设置。

在您的函数中添加一个Microsoft.Azure.WebJobs.ExecutionContextcontext 类型的参数,然后您可以在其中构建一个IConfigurationRoot提供程序:示例:

[FunctionName("Stackoverflow")]
public static async Task Run([TimerTrigger("0 */15 * * * *")]TimerInfo myTimer,
    TraceWriter log, ExecutionContext context, 
    CancellationToken ctx)
{
   var config = new ConfigurationBuilder()
        .SetBasePath(context.FunctionAppDirectory)
        .AddJsonFile("local.settings.json", optional: true, reloadOnChange: true)
        .AddEnvironmentVariables()
        .Build();

    // This abstracts away the .json and app settings duality
    var myValue = config["MyKey"];
}

将其部署到 Azure 后,您可以更改功能应用程序设置上的设置值。

在此处输入图像描述

于 2019-09-13T04:14:40.640 回答