Class不会使用unity的JSONUtility序列化为JSON

时间:2016-02-22 15:51:53

标签: c# json unity3d unity5

我有以下类,它是可序列化的,只有字符串作为字段:

using UnityEngine;
using System.Collections;
using System.Collections.Generic;

[System.Serializable]
public class Cabeza
{

    string id, urlOBJ, urlTextura, pathOBJbajado, pathTexturaBajada;

    public string Id { get; set; }
    public string UrlOBJ { get; set; }
    public string UrlTextura { get; set; }
    public string PathOBJbajado { get; set; }
    public string PathTexturaBajada { get; set; }


    public Cabeza (string nuevoId)
    {
        Id = nuevoId;
        UrlOBJ =  nuevoId +".obj";
        UrlTextura =  nuevoId + ".png";

    }


}

据我所知,应该可以从中获取JSON ...但是,JsonUtility.ToJson()仅返回{ }。这怎么可能?我错过了什么?

1 个答案:

答案 0 :(得分:5)

The documentation提到(但不清楚).ToJson()序列化字段,而不是属性。

我认为以下代码可以按照您的意图运行:

using UnityEngine;
using System.Collections;
using System.Collections.Generic;

[System.Serializable]
public class Cabeza
{
    public string Id;
    public string UrlOBJ;
    public string UrlTextura;
    public string PathOBJbajado;
    public string PathTexturaBajada;

    public Cabeza (string nuevoId)
    {
        Id = nuevoId;
        UrlOBJ =  nuevoId +".obj";
        UrlTextura =  nuevoId + ".png";
    }
}