📅  最后修改于: 2023-12-03 15:02:26.240000             🧑  作者: Mango
在 C# 中,使用 JsonConvert
类可以将一个对象序列化为 JSON 字符串,也可以将一个 JSON 字符串反序列化为对象。在本文中,我们将重点介绍 JsonConvert.SerializeObject
和 JsonConvert.DeserializeObject<List<T>>
两个方法的用法。
JsonConvert.SerializeObject
方法将一个对象序列化为 JSON 字符串,可以用于将对象或集合序列化为 JSON 字符串。以下代码演示了如何使用 JsonConvert.SerializeObject
方法将一个对象序列化为 JSON 字符串:
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
var person = new Person { Name = "John", Age = 30 };
var json = JsonConvert.SerializeObject(person);
// {"Name":"John","Age":30}
JsonConvert.DeserializeObject<List<T>>
方法将一个 JSON 字符串反序列化为指定类型的对象集合。以下代码演示了如何使用 JsonConvert.DeserializeObject<List<T>>
方法将一个 JSON 字符串反序列化为 List<Person>
对象集合:
var json = "[{\"Name\":\"John\",\"Age\":30},{\"Name\":\"Mike\",\"Age\":25}]";
var people = JsonConvert.DeserializeObject<List<Person>>(json);
// List<Person> { Person { Name = "John", Age = 30 },
// Person { Name = "Mike", Age = 25 } }
在上述代码中,我们使用了一个包含两个 Person
对象的 JSON 字符串反序列化为了一个 List<Person>
对象集合。
JsonConvert
类提供了很多方法用于将对象序列化为 JSON 字符串或反序列化为对象,其中 JsonConvert.SerializeObject
和 JsonConvert.DeserializeObject<List<T>>
是最常用的两个方法。我们可以通过这两个方法来方便地处理 JSON 数据在 C# 中的序列化和反序列化。