0

(using .NET 6.0)

I used these commands to set a connection string:

  • dotnet user-secrets init
  • dotnet user-secrets set ConnectionStrings:AppConfig "{myconnectionstring}"

but I can't figure out how to retrieve that connection string using IHostBuilder. This returns a null string:

public class Program
{
    public static void Main(string[] args)
    {
        CreateHostBuilder(args).Build().Run();
    }

    private static IHostBuilder CreateHostBuilder(string[] args) => Host.CreateDefaultBuilder(args).ConfigureWebHostDefaults(webBuilder =>
    {
        webBuilder.ConfigureAppConfiguration((hostingContext, configurationBuilder) =>
            {
                configurationBuilder.AddAzureAppConfiguration(options =>
                {
                    var azureAppConfigConnectionString = hostingContext.Configuration.GetConnectionString("AppConfig");

debug screen cap

1
  • Is your app .NET Core 6 WebApp or a Console App? Commented Oct 3, 2023 at 17:10

1 Answer 1

0

Even Iam getting the user secret value null with the code which you have provided.

I am able to retrieve the user secret with few changes.

Thanks @Christian Nagel for the code snippet.

  • Add configurationBuilder.Build(); and then retrieve the value from the variable.

My Program.cs file

using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Configuration.AzureAppConfiguration;
using System;

public class Program
{
   public static void Main(string[] args)
   {
       CreateHostBuilder(args).Build().Run();
   }

   private static IHostBuilder CreateHostBuilder(string[] args) =>
       Host.CreateDefaultBuilder(args)

           .ConfigureWebHostDefaults(webBuilder =>
           {
               webBuilder.ConfigureAppConfiguration((hostingContext, configurationBuilder) =>
               {
                   var mysettings = configurationBuilder.Build();
                   var azureAppConfigConnectionString = mysettings.GetConnectionString("AppConfig");

                   configurationBuilder.AddAzureAppConfiguration(options =>
                   {
                       options.Connect(azureAppConfigConnectionString);                              
                   });
               })
               .UseStartup<Startup>();
           });
}

Output:

enter image description here

Sign up to request clarification or add additional context in comments.

1 Comment

Many thanks! var mysettings = configurationBuilder.Build(); was what I was missing.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.