温馨提示×

C# json序列化时如何保留类型

c#
小樊
104
2024-07-19 13:16:40
栏目: 编程语言

在C#中,可以通过在JsonSerializerSettings中设置TypeNameHandling属性来保留类型信息。具体做法如下所示:

using Newtonsoft.Json;

// 创建JsonSerializerSettings对象
JsonSerializerSettings settings = new JsonSerializerSettings
{
    TypeNameHandling = TypeNameHandling.All
};

// 将对象序列化为json字符串
string json = JsonConvert.SerializeObject(yourObject, settings);

// 将json字符串反序列化为对象
var deserializedObject = JsonConvert.DeserializeObject(json, settings);

在上面的代码中,我们创建了一个JsonSerializerSettings对象,并将TypeNameHandling属性设置为TypeNameHandling.All来保留类型信息。然后,我们使用JsonConvert.SerializeObject方法将对象序列化为json字符串,并传入设置对象作为参数。最后,我们可以使用JsonConvert.DeserializeObject方法将json字符串反序列化为对象,并传入相同的设置对象。这样就可以保留类型信息了。

0