我正在构建我的第一个功能应用程序,所以如果我问了一个愚蠢的问题,请记住这一点 :)
我需要在运行时存储一些设置。在标准桌面应用程序中,我可以使用以下方法轻松更新app.config
:
System.Configuration.Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
config.AppSettings.Settings["UserId"].Value = "myUserId";
config.Save(ConfigurationSaveMode.Modified);
但在 Function App 中,我使用以下方式加载配置ConfigurationBuilder
:
var config = new ConfigurationBuilder()
.SetBasePath(context.FunctionAppDirectory)
.AddJsonFile("local.settings.json", optional: true, reloadOnChange: true)
.AddEnvironmentVariables()
.Build();
并且无法更新该配置对象。在本地开发时,我可以更新 local.settings.json,但在 Azure 上运行时,一切都是从Application settings
(环境变量)加载的。
我的问题是:如何更新与我的 Function App 关联的应用程序设置中的单个值?
我发现了一个类似的问题,但那里的解决方案需要在 AAD 中注册应用程序,并且它正在更新所有设置,而不仅仅是一个值。