.Net核心配置.GetSection()。Get <>()不绑定

时间:2018-08-19 04:52:04

标签: c# asp.net-core-2.1

我正在尝试将来自appsettings.json的设置注入到对象中,我正在遵循Microsoft文档,而我的Configuration.GetSection()。Get <>()始终为null,我正在使用的文档是一个Documentation

我正在使用.Net Core 2.1

我的设置是这样:

{
  "MongoSettings": {
    "ConnectionString": "mongodb://admin:abc123!@localhost",
    "Database": "NotesDb"
  }
}

我要注入的班级是这个:

public class MongoSettings
{
    public string ConnectionString;
    public string Database;
}

我正在使用以下代码来填充我的注入,并且它总是为空。

Configuration.GetSection("MongoSettings").Get<MongoSettings>()

以下是我使用代码时得到的回报

enter image description here

“我的配置”没问题,请看下面的图片。

enter image description here

我对ConnectionString和Database null附带的对象做错了什么?有人可以帮我吗?

1 个答案:

答案 0 :(得分:3)

您的课有2个字段。配置系统仅适用于属性。将{ get; set; }添加到两个字段的末尾以对其进行修复。

public class MongoSettings
{
    public string ConnectionString { get; set; }
    public string Database { get; set; }
}