使用JsonUtility对Unity3D中的T[]对象进行Json解析时始终返回null
所以,这里是我的Json字符串,我想在我的Unity代码中将其解析为数组使用JsonUtility对Unity3D中的T[]对象进行Json解析时始终返回null,json,unity3d,Json,Unity3d,所以,这里是我的Json字符串,我想在我的Unity代码中将其解析为数组 [ {"id":1,"museum":"Museum Kelvin"} ,{"id":2,"museum":"Museum Keke"}, {"id":3,"museum":"Museum Keke2"}, {"id":4,"museum":"Museum Keke2"} ] 我已经使用此代码获取了此字符串的值 IEnumerator GetPertanyaan() { string getPe
[
{"id":1,"museum":"Museum Kelvin"}
,{"id":2,"museum":"Museum Keke"},
{"id":3,"museum":"Museum Keke2"},
{"id":4,"museum":"Museum Keke2"}
]
我已经使用此代码获取了此字符串的值
IEnumerator GetPertanyaan()
{
string getPertanyaanUrl = "http://museumadv.azurewebsites.net/museum/list";
using (UnityWebRequest www = UnityWebRequest.Post(getPertanyaanUrl,"1"))
{
//www.chunkedTransfer = false;
yield return www.Send();
if (www.isError || www.responseCode==500 || www.responseCode==404)
{
Debug.Log(www.responseCode);
}
else
{
if (www.isDone)
{
string jsonResult =System.Text.Encoding.UTF8.GetString(www.downloadHandler.data);
Debug.Log(jsonResult); // Succes to read the JSON
JMuseum[] entities = JsonHelper.getJsonArray<JMuseum>(jsonResult);
foreach (var pert in entities)
{
Debug.Log(pert.museum); //always null
}
}
}
}
}
问题是,museum的值始终为空(null),但数组的长度是正确的
你们有什么解决办法吗
谢谢,Unity无法序列化属性 试试这个
public class JMuseum
{
public int id;
public string museum;
}
我从您的代码中设置了一个最小的示例,并通过此更改使其正常工作..谢谢,我现在看到了我的问题:)谢谢您的回答:)
[System.Serializable]
public class JMuseum
{
public int id { get; set; }
public string museum { get; set; }
}
public class JMuseum
{
public int id;
public string museum;
}