如何仅反序列化 json 文档的一部分



在dotnet core v3预览版上使用 Json.Net。

json 看起来类似于:

{
    "rootElement": {
        "id": 500,
        "name": "water balloon"
    }
}

我想将其反序列化为如下所示的对象:

public class Item {
    public int id {get;set;}
    public string name {get;set;}
}

而不是更烦人:

public class ItemWrapper {
    public Item rootElement {get;set;}
}

这显然是一个人为的例子,但它说明了问题。 实际的Item类要复杂得多。 而且有很多。 因此,我正在尝试确定一种解决方案,该解决方案适用于具有这种通用格式的任何json文档,该文档具有根节点,后跟我实际感兴趣的对象。

有什么想法吗?

您可以使用

Newtonsoft.Json.Linq命名空间中的JObject.Parse,并像这样获取您的项目:

var obj = JObject.Parse("json"); 
var item = obj["rootElement"].ToObject<Item>();

相关内容

  • 没有找到相关文章

最新更新