首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用依赖注入的Azure函数IConfig

使用依赖注入的Azure函数IConfig
EN

Stack Overflow用户
提问于 2022-07-07 10:41:34
回答 1查看 58关注 0票数 1

我需要配置文件中的一些信息,我的local.settings.json中有这些信息

代码语言:javascript
复制
{
  "IsEncrypted": false,
  "Values": {
    "AzureWebJobsStorage": "UseDevelopmentStorage=true",
    "FUNCTIONS_WORKER_RUNTIME": "dotnet-isolated",
    "EmailProcessConnection": "",
    "SendDeveloperMails": 0,
    "Email": {
      "Email": "",
      "Password": ""
    },
   
  },
  "ConnectionStrings": {
    "HumanRisksDbContext": ""
  }
}

我有一个服务,是从我的时间触发Azure函数调用。其构造函数如下所示

代码语言:javascript
复制
public ControlRisksService(HumanRisksDbContext context, 
    ILogHandler logHandler, IConfiguration configuration)
{
    this.context = context;
    _logHandler = logHandler;
    _config = configuration;
}

我以后需要从_config那里得到信息,

代码语言:javascript
复制
_config.GetValue<bool>("SendDeveloperMails")

我怎样才能得到这些信息?

EN

回答 1

Stack Overflow用户

发布于 2022-07-07 12:22:20

您可以使用local.settings.jsonEnvironmentVariable获取信息。

代码语言:javascript
复制
var config = new ConfigurationBuilder().AddEnvironmentVariables().Build();
var connString = config["ConnectionStrings"];

另外,您需要将更新的local.settings.json文件放入D:\MyApp\bin\Debug\net6.0\local.settings.json位置,然后在启动文件program.cs中注册JSON,如下所示:

代码语言:javascript
复制
var host = new HostBuilder()
    .ConfigureAppConfiguration(app =>
    {
        app.AddJsonFile("appsettings.json", optional: false, 
            reloadOnChange: true).AddEnvironmentVariables().Build();
    }).Build();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72896366

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档