相关疑难解决方法(0)

我可以在属性中指定路径以将我的类中的属性映射到我的JSON中的子属性吗?

有些代码(我无法更改)使用Newtonsoft.Json DeserializeObject<T>(strJSONData)从Web请求中获取数据并将其转换为类对象(我可以更改类).通过使用我的类属性进行装饰,[DataMember(Name = "raw_property_name")]我可以将原始JSON数据映射到我的类中的正确属性.有没有办法可以将JSON复杂对象的子属性映射到一个简单的属性?这是一个例子:

{
    "picture": 
    {
        "id": 123456,
        "data": 
        {
            "type": "jpg",
            "url": "http://www.someplace.com/mypicture.jpg"
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

除了URL之外,我不关心任何其他图片对象,因此不想在我的C#类中设置复杂对象.我真的只想要这样的东西:

[DataMember(Name = "picture.data.url")]
public string ProfilePicture { get; set; }
Run Code Online (Sandbox Code Playgroud)

这可能吗?

c# json json.net deserialization

44
推荐指数
4
解决办法
2万
查看次数

标签 统计

c# ×1

deserialization ×1

json ×1

json.net ×1