C# 如何从嵌套类或结构以json格式编写

C# 如何从嵌套类或结构以json格式编写,c#,json,unity3d,C#,Json,Unity3d,将嵌套json文件的结构作为嵌套类,当我写入json时,json总是空的 public class Class1 { public int level; public float timeElapsed; public string playerName; public Class2 subClass; } public class Class2 { public int age; } 我得到{“等级”:1,“时间流逝”:47.5,“玩家名称”:

将嵌套json文件的结构作为嵌套类,当我写入json时,json总是空的

public class Class1
{
    public int level;
    public float timeElapsed;
    public string playerName;
    public Class2 subClass;


}

public class Class2
{
    public int age;
}

我得到{“等级”:1,“时间流逝”:47.5,“玩家名称”:“弗朗西斯”},年龄在哪里

using System;
using UnityEngine;

public class Example : MonoBehaviour
{
    private void Start()
    {
        Class2 class2 = new Class2();
        class2.age = 99;

        Class1 myObject = new Class1();
        myObject.level = 1;
        myObject.timeElapsed = 47.5f;
        myObject.playerName = "Francis";
        myObject.subClass = class2;

        var jsonString = JsonUtility.ToJson(myObject);
        print(jsonString);
    }
}

[Serializable]
public class Class1
{
    public int level;
    public float timeElapsed;
    public string playerName;
    public Class2 subClass;
}

[Serializable]
public class Class2
{
    public int age;
}

结果是{“level”:1,“timeappeased”:47.5,“playerName”:“Francis”,“subClass”:{“age”:99}

我不做Unity,但我发现这表明类需要
[Serializable]
属性。
using System;
using UnityEngine;

public class Example : MonoBehaviour
{
    private void Start()
    {
        Class2 class2 = new Class2();
        class2.age = 99;

        Class1 myObject = new Class1();
        myObject.level = 1;
        myObject.timeElapsed = 47.5f;
        myObject.playerName = "Francis";
        myObject.subClass = class2;

        var jsonString = JsonUtility.ToJson(myObject);
        print(jsonString);
    }
}

[Serializable]
public class Class1
{
    public int level;
    public float timeElapsed;
    public string playerName;
    public Class2 subClass;
}

[Serializable]
public class Class2
{
    public int age;
}