Unity:如何将json字符串反序列化为类?

时间:2018-10-06 04:43:21

标签: c# json unity3d

我是一个团结的新手,我正在学习如何使用Facebook SDK for Unity与Facebook集成制作统一的应用程序。我一直在试图从统一的类方法中执行的图形请求中生成json结果,我的问题是每次我尝试访问所谓的反序列化json的属性进行分类时,都会抛出此错误:

Object reference not set to an instance of an object

此错误抛出于我尝试访问该属性的行,而不是创建对象的行。.Facebook和Unity的json实用程序都会发生此错误,我不知道如何正确转换json数据进入一个类,我的代码是这样的:

private void FbGetPhotos() {
    actionText.text = "Requesting photos";

    FB.API("/me/photos", HttpMethod.GET, result => {
        NodesResult nodesResult = NodesResult.FromJSON(result.RawResult);

        Debug.Log(nodesResult.data.Count);
    });
}

NodesResult类

using System.Collections.Generic;
using UnityEngine;

namespace classes {
    public class NodesResult {
        public List<object> data;
        public object paging;

        public static NodesResult FromJSON(string raw) {
            return JsonUtility.FromJson<NodesResult>(raw);
        }
    }
}

JSON字符串

{
  "data": [
    {
      "created_time": "2018-08-12T08:07:35+0000",
      "name": "Horas de horas para lograr esto Javier Andres Mura Rios Estoy orgulloso.",
      "id": "1919500911450147"
    }
  ],
  "paging": {
    "cursors": {
      "before": "QVFIUnpNaTZAqSW1NMDJya0ZAtWUZAiRWxRWW1lUHdmYy1rVERHaldsVllXSFBab0h4YW1HcEtXTmhNdW0tNGxVVjRQbXotdHo3alBvUzRUa09TaVJiVzJYc2ln",
      "after": "QVFIUnpNaTZAqSW1NMDJya0ZAtWUZAiRWxRWW1lUHdmYy1rVERHaldsVllXSFBab0h4YW1HcEtXTmhNdW0tNGxVVjRQbXotdHo3alBvUzRUa09TaVJiVzJYc2ln"
    }
  }
}

就像我说的那样,当我尝试访问该属性时会引发错误,在这种情况下是Debug.Log所在的地方。

注意:我知道那里有很多示例,但没有一个对我有用,facebook示例仅使用Dictionary对象处理数据,但我相信仅使用Dictionary可以使代码有点难以理解,这也可能是我第一次用C#解析json字符串,所以我对将json字符串正确解析为类和子类的推荐方法非常感兴趣

0 个答案:

没有答案