using System.Text.Json; 简单使用

public class User
{
public int Id { get; set; }
public string Name { get; set; }
}
internal class Program
{
static async Task Test()
{
var user = new User { Id = 9, Name = "Jack57" };
//选项
var options = new JsonSerializerOptions
{
WriteIndented = true, //格式化输出的代码
PropertyNameCaseInsensitive = true, //忽略大小写
};
//=============================================================
//序列化
//要输出js那种小驼峰可能需要自定义规则
https://docs.microsoft.com/en-us/dotnet/standard/serialization/system-text-json-customize-properties?pivots=dotnet-6-0
var jsonString = JsonSerializer.Serialize(user, options);
Console.WriteLine(jsonString);
//=============================================================
//反序列化
var newUser = System.Text.Json.JsonSerializer.Deserialize<User>(jsonString);
Console.WriteLine(newUser.Name);
//=============================================================
//反序列化为字典,方便取出想要的部分转对象
var dict = System.Text.Json.JsonSerializer.Deserialize<Dictionary<string, object>>(jsonString);
Console.WriteLine(dict["Id"]);
}

属性映射新名字

[JsonPropertyName("Wind")]

posted @   trykle  阅读(156)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示