我一直在.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属性?
谢谢