当前位置: 首页 > 知识库问答 >
问题:

Azure功能设置在门户和本地不一致

郎宏浚
2023-03-14

我使用Azure函数,有一个问题。我用变量声明了一个local.settings.json文件,如下所示:

{
  "IsEncrypted": false,
  "Values": {
    "FUNCTIONS_WORKER_RUNTIME": "dotnet",
    "TopicEndpoint": "my endpoint"
  }  
}

这允许我的azure函数使用以下命令读取设置:

var config = new ConfigurationBuilder()
        .SetBasePath(context.FunctionAppDirectory)
        .AddJsonFile("local.settings.json", optional: true, reloadOnChange: true)
        .AddEnvironmentVariables()
        .Build();
var myTopic = config["Values:TopicEndpoint"];
{
  "IsEncrypted": false,
  "Values": {
    "FUNCTIONS_WORKER_RUNTIME": "dotnet",
  }  
  "TopicEndpoint": "my endpoint"
}

这样,我就可以在本地开发环境和Azure上安全地使用config['topicendpoint']。但是,这违背了--publish-local-settings-i的目的,因为它只导出在'values'键下找到的值,所以我必须手动创建所有设置。

你知道为什么会这样吗?或者我错过了什么?

共有1个答案

阳宗清
2023-03-14

我想你用了一点不同的方式。问题是,local.settings.json中的值自动作为环境变量出现,因此您根本不必担心如何处理文件。这就是我们在项目中的做法,它适用于所有环境。

// see, just env variables
var configuration = new ConfigurationBuilder().AddEnvironmentVariables().Build();

// and then use
var value = configuration["TopicEndpoint"];
 类似资料:
  • 问题内容: 我的Azure函数具有以下function.json,其日程表设置为每天9.30运行。我想要的是动态设置此json 的属性。当正在使用我的应用程序的客户端输入日期时,就会出现这种情况,该日期计划程序应该运行。 这可能吗? (还请注意,由于预算原因,我不想使用Azure Scheduler) 问题答案: 使用Kudu API更改function.json https://github.c

  • 我正在尝试在 .NET 标准 2.0 中创建 Azure Functions 项目,因为我需要在此项目中使用 .NET 标准 2.0 类库。 但是,当我尝试创建一个简单的 Azure Functions 项目并在本地运行它时,我收到以下错误: https://imgur.com/iDUrgYB.jpg 正如我之前所说,我的代码非常基本,但无论如何我都会分享它。 My .csproj file: h

  • 我在使用Azure云服务时遇到了瓶颈问题。该服务过去工作正常,基本上它所做的就是将Azure存储帐户中的信息存储到Azure数据库中。上个月没有数据加载到Azure数据库中,服务有一段时间没有更改,数据库没有锁定问题,但当我尝试检查我的存储帐户时,它在新的Azure门户中不可用,但在旧门户中不可用,从旧门户我没有与新门户相同的选项。指标是可以的,但是我遇到的这个瓶颈问题,数据加载可能与新门户中丢失

  • 我创建了一个Azure函数,该函数使用用户指定的托管身份从Azure密钥库中检索机密。当我在Visual Studio中测试时,代码在本地工作,但当我发布到云时失败。我已在Azure中创建了一个“托管标识”资源,并向托管标识添加了一个“关键Vault参与者”角色分配。在设置下的my Azure函数中 以下是我在Azure门户中测试功能时收到的错误。HTTP响应代码:500内部服务器错误执行“Fun

  • 我无法理解Function应用程序的工作原理。 我的环境如下:Python3.8、Blob触发器、消费计划 我正在创建一个应用程序,当音频文件上传到容器时触发该应用程序。此音频文件触发Azure函数并使用Azure认知服务运行“语音到文本”(因此我的函数正在等待该服务的回复)。我在5处设置了一个“FUNCTIONS_WORKER_PROCESS_COUNT”,以允许我的每个函数应用程序实例并行运行

  • 需要帮助找到通过-1或使用appsettings部署应用程序自定义应用程序设置的方法。由my.funproj创建的json(vs工具2015)2.appveyor的环境变量3.任何其他技巧 我想要的只是避免在门户中手动设置这些东西并让它们受到源代码控制(更好地使用部署,例如-appveyer的安全环境变量) 提前感谢!下面是我针对的门户设置的示例- 应用程序的环境变量设置示例- 函数应用程序(ru