在C#中进行JSON序列化和反序列化是常见的操作,可以使用内置的System.Text.Json命名空间提供的类来实现。
using System;
using System.Text.Json;
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
public class Program
{
static void Main(string[] args)
{
Person person = new Person { Name = "John", Age = 30 };
string jsonString = JsonSerializer.Serialize(person);
Console.WriteLine(jsonString);
}
}
在上述示例中,我们定义了一个名为Person的类。我们使用JsonSerializer类的Serialize方法将Person对象序列化为JSON字符串,并打印出JSON字符串。
using System;
using System.Text.Json;
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
public class Program
{
static void Main(string[] args)
{
string jsonString = "{\"Name\":\"John\",\"Age\":30}";
Person person = JsonSerializer.Deserialize<Person>(jsonString);
Console.WriteLine("Name: " + person.Name);
Console.WriteLine("Age: " + person.Age);
}
}
在上述示例中,我们使用JsonSerializer类的Deserialize方法将之前序列化的JSON字符串反序列化为Person对象,并打印出对象的属性值。 System.Text.Json提供了许多选项来自定义序列化和反序列化过程,例如处理null值、忽略缺失的属性或指定属性名称策略。你可以在微软官方的System.Text.Json文档中进一步了解这些选项。 另外,如果你更喜欢使用其他的JSON序列化库,比如Newtonsoft.Json (Json.NET),你可以通过NuGet安装它,并使用其中的JsonConvert类的SerializeObject()和DeserializeObject<T>()方法来实现类似的功能。