I have a .NET Core API project and I am trying to read some settings from the appsettings.json file.
The file looks like this:
{
  "Logging": {
    "IncludeScopes": false,
    "Debug": {
      "LogLevel": {
        "Default": "Warning"
      }
    },
    "Console": {
      "LogLevel": {
        "Default": "Warning"
      }
    }
  },
  "ConnectionString": "abc"
}
and I am trying to read the ConnectionString setting like this:
ConfigurationManager.AppSettings["ConnectionString"];
but I get null, and apparently no app settings have been detected at all.
Edit:
Here is what I have now:
startup.cs
public class Startup
    {
        public Startup(IConfiguration configuration)
        {
            Configuration = configuration;
        }
        public static IConfiguration Configuration { get; set; }
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddDbContext<MyContext>();
            services.AddMvc();
            services.Configure<ConnectionStringSettings>(Configuration);
        }
}
ConnectionStringSettings.cs
 public class ConnectionStringSettings
    {
        public string ConnectionString { get; set; }
    }
appsettings.json
{
  "Logging": {
    ...
  },
  "ConnectionStrings": {
    "Debug": "abc"
  }
}
MyContext.cs public class MyContext : DbContext { string x;
    public MyContext() { }
    public MyContext(DbContextOptions<MyContext> options)
        : base(options) { }
    public MyContext(IOptions<ConnectionStringSettings> connectionStringSettings)
    {
        x = connectionStringSettings.Value.ConnectionString;
    }
    protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
    {
       //here I need my connection string
        optionsBuilder.UseMySql(connectionString);
    }
}
 
     
     
    