【问题标题】:Accessing Azure App Configuration from a console application从控制台应用程序访问 Azure 应用程序配置
【发布时间】:2021-02-19 23:28:30
【问题描述】:

我正在尝试使用简单的控制台应用程序访问应用程序配置。到目前为止,我有:

static void Main(string[] args)
{
    IConfiguration config = new ConfigurationBuilder()
              .AddUserSecrets("e7315677-d6aa-41ab-b7cc-8e801a7c8ae9")
              .AddAzureAppConfiguration("ConnectionStrings:AppConfig")
              .Build();
    Console.WriteLine("Hello World!");
}

但是抛出了一个异常提示

System.ArgumentException: '连接字符串没有关键字'ConnectionStrings:AppConfig'的值。'

我已将此连接字符串放在 secrets.json 中,并且我知道它是有效的。我做错了什么?

{
  "ConnectionStrings:AppConfig": "<my connection string>"
}

谢谢。

凯文

【问题讨论】:

    标签: .net-core app-config azure-app-configuration


    【解决方案1】:

    确保连接字符串以“Endpoint=”开头。它正在寻找键/值对,并将没有键的值解释为没有值的键。

    【讨论】:

      【解决方案2】:

      AddAzureAppConfiguration 方法需要一个连接字符串作为参数。您收到System.ArgumentException,因为"ConnectionStrings:AppConfig" 不是有效的连接字符串。

      为了使用用户机密中定义的连接字符串来初始化 Azure 应用程序配置提供程序,我们可以首先使用用户机密构建一个 IConfiguration 实例,并使用它来访问连接字符串属性。这是您的代码的修改版本。

      static void Main(string[] args)
      {
          IConfiguration intermediate = new ConfigurationBuilder()
              .AddUserSecrets("e7315677-d6aa-41ab-b7cc-8e801a7c8ae9")
              .Build();
      
          IConfiguration configuration = new ConfigurationBuilder()
              .AddAzureAppConfiguration(intermediate["ConnectionStrings:AppConfig"])
              .Build();
      }
      
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-04-06
        • 1970-01-01
        • 1970-01-01
        • 2010-12-17
        相关资源
        最近更新 更多