小编Luk*_*bis的帖子

.NET Core中的强类型配置忽略JsonProperty属性

我一直在.NET Core中使用强类型配置,我发现了一些奇怪的行为.

POCO

public class ModuleConfiguration
{
    [JsonProperty("menu")]
    public List<MenuItem> MenuItems { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

Settings.json

{
  "moduleConfiguration": {
    "menu": [
      {
        "id": 1,
        "name": "test"
      }
    ]
  }
}
Run Code Online (Sandbox Code Playgroud)

当我加载配置时:

var builder = new ConfigurationBuilder().AddJsonFile(path);
var config = builder.Build().GetSection("moduleConfiguration").Get<T>();
Run Code Online (Sandbox Code Playgroud)

的MenuItems集合为null,但如果我改变"菜单"到"的菜单项"(在settings.json),收集正确填充.

这是否意味着忽略了JsonProperty属性?

谢谢

json json.net .net-core asp.net-core

2
推荐指数
1
解决办法
1133
查看次数

标签 统计

.net-core ×1

asp.net-core ×1

json ×1

json.net ×1