首页 > 解决方案 > 在简单的控制台应用程序(Core 3.1)中从 appsetting.json 检索连接字符串

问题描述

我正在编写一个非常简单的控制台应用程序,它需要挖掘数据库并读取值。我在从 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();
}

这有点工作,但只是在我期望连接字符串的地方返回一个空值。

appsettings.json 如下:

{
  "ConnectionStrings": {
    "DbName": "Connection string"
  }
}

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

标签: configurationconsole-application.net-core-3.1appsettings

解决方案


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


推荐阅读