【发布时间】:2015-05-01 01:54:58
【问题描述】:
我有一些 JSON 具有多种属性,其中大部分是简单的数据类型。但是,我在 JSON 中有一个属性,当我将其反序列化为 C# 类时,我只需要将其反序列化为字符串。
示例 JSON:
{"simpleProperty": "value1", "json":{"a":"a1", "b":"b1"}}
“json”对象除了是一个有效的 JSON 对象外没有固定的结构。
所以在上面的例子中,“json”的值是一个 JSON 对象——但是当它被反序列化时,我需要它作为一个字符串。
如果我的 C# 类是:
public class MyClass
{
public string SimpleProperty { get; set; }
public string Json { get; set; }
}
然后如果我使用:
var myClass = JsonConvert.DeserializeObject<MyClass>(jsonStr);
我希望 myClass.Json 只是一个简单的字符串。
我已经考虑为此创建一个自定义 JsonConverter,但对于这么简单的事情来说,这似乎太复杂了。我一定在这里遗漏了一些东西。任何方向将不胜感激。
我也看到了这篇文章——但它确实没有回答这个问题:JSON.Net - How to deserialize JSON to object but treating a property as a string instead of JSON?
【问题讨论】:
标签: c# json serialization json.net