【问题标题】:Unity3d FullInspector and Json.net not serializing dataUnity3d FullInspector 和 Json.net 不序列化数据
【发布时间】:2016-02-20 16:32:47
【问题描述】:

问题:我很难用完整的检查器和 json.net 序列化数据。

这是我刚刚运行的一个简单测试的示例。我在项目中有 json.net 和完整的检查员。当我将测试脚本放在场景中的对象上时,我可以看到暴露的模型对象并编辑其属性。但是,当我运行应用程序时,没有任何数据存在。我错过了什么吗?

我看到有一个引用包装器in the documentation,但这似乎是用于序列化行为引用,而不是标准对象。 (也许我错了)

using FullInspector;
using Newtonsoft.Json;

public class test : BaseBehavior
{
    public JsonModel model;

}

public class JsonModel : BaseObject
{
    [JsonProperty(propertyName: "id")]
    public string ID { get; set; }
}

您可以看到,一旦我在统一编辑器中运行项目,数据就会消失。 (运行以颜色表示)

上面的代码有一个属性的原因是因为它是一个 json.net 对象,所以我可以反序列化来自我的 cms 的响应并将数据绑定到这个对象。不过,这不是此模型对象的唯一用途,我希望能够在编辑器中公开它并手动插入数据并保存数据(因为某些内容将存放在本地并具有相同的结构)。

【问题讨论】:

    标签: c# serialization unity3d json.net inspector


    【解决方案1】:

    JsonModel 由 Unity 序列化 - 它需要一个 [Serializable] 注释。

    请注意BaseObject 只支持Full Serializer;这将按原样工作,因为 FS 默认会序列化自动属性。

    【讨论】:

      猜你喜欢
      • 2014-03-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多