Configuration 在简单控制台应用程序(Core 3.1)中从appsetting.json检索连接字符串

Configuration 在简单控制台应用程序(Core 3.1)中从appsetting.json检索连接字符串,configuration,console-application,.net-core-3.1,appsettings,Configuration,Console Application,.net Core 3.1,Appsettings,我正在编写一个非常简单的控制台应用程序,需要深入数据库并读取值。从appsettings.json获取连接字符串时遇到问题。在谷歌搜索了一整段时间后,我找到了一系列解决方案,每种解决方案都有自己的问题,比如过时或者只是返回空值而没有明显的原因。我发现的主要(也是最常见的)方法如下: static void Main() { var configuration = GetConfiguration(); var connectionString = configuration.Ge

我正在编写一个非常简单的控制台应用程序,需要深入数据库并读取值。从appsettings.json获取连接字符串时遇到问题。在谷歌搜索了一整段时间后,我找到了一系列解决方案,每种解决方案都有自己的问题,比如过时或者只是返回空值而没有明显的原因。我发现的主要(也是最常见的)方法如下:

static void Main()
{
    var configuration = GetConfiguration();
    var connectionString = configuration.GetSection("ConnectionsStrings").GetSection("DbName");
}

public static IConfigurationRoot GetConfiguration()
{
    var builder = new ConfigurationBuilder().AddJsonFile("appsettings.json", optional: true, reloadOnChange: true);
    return builder.Build();
}
{
  "ConnectionStrings": {
    "DbName": "Connection string"
  }
}
这在某种程度上是可行的,但只是返回一个空值,我希望在这个空值中使用连接字符串

appsettings.json如下所示:

static void Main()
{
    var configuration = GetConfiguration();
    var connectionString = configuration.GetSection("ConnectionsStrings").GetSection("DbName");
}

public static IConfigurationRoot GetConfiguration()
{
    var builder = new ConfigurationBuilder().AddJsonFile("appsettings.json", optional: true, reloadOnChange: true);
    return builder.Build();
}
{
  "ConnectionStrings": {
    "DbName": "Connection string"
  }
}

如果有人能发现任何明显的问题并帮助我,我们将不胜感激。

警告所有人。别像我一样。不要添加appsettings.json,然后在17个小时内完全忘记检查属性并将其作为嵌入式资源,同时对返回值始终为null感到恼火。你会想,经过多年的编码,我会吸取教训