上手性能更好的Json组件

前言

前几天看到比System.Text.Json性能更好的Json组件,来自游戏引擎开发商Capcom的REDox组件,REDox在反序列性能更好,使用更少的内存.这里就不列举性能上的指标.具体可以看:REDox文档

示例代码

dotnet add package CAPCOM.REDox
using REDox;
using REDox.Json;
using REDox.Serialization;

namespace _26Test;

internal class Program
{
    public static SerializerSettings settings = new DoxSerializerSettings()
    {
        PropertyNamingPolicy = NamingPolicy.CamelCase // 属性名使用 camelCase 风格
    };

    static void Main(string[] args)
    {
        Person p = new(1, "John Doe", 30);

        //序列化
        var json = JsonSerializer.Serialize(p, settings);
        Console.WriteLine(json);


        //反序列化
        var deserializedPerson = JsonSerializer.Deserialize<Person>(json, settings);
        Console.WriteLine(deserializedPerson);


        //没有使用设置属性配置
        var playerJson = JsonSerializer.Serialize(new Player { Name = "Alice", Level = 5, Items = ["Sword", "Shield"] });
        Console.WriteLine(playerJson);
    }
}


public record Person(int Id, string UserName, int Age)
{
    public override string ToString()
    {
        return $"Person(Id: {Id}, UserName: {UserName}, Age: {Age})";
    }
}

public sealed class Player
{
    public string? Name { get; set; }
    public int Level { get; set; }
    public string[] Items { get; set; } = [];
}

整体使用还是很方便的,使用和NewtonsoftJson/System.Text.Json相差不大.后续可以在项目中使用起来.

秋风 2026-10-07