gpt4 book ai didi

c# - 系统.MissingMethodException : Error while deserialization of json array

转载 作者:行者123 更新时间:2023-11-30 15:40:28 28 4
gpt4 key购买 nike

反序列化 jsonString 时出现错误。

错误是数组的反序列化不支持类型“oodleListingsUser”。

我的反序列化代码是

    string jsonString = new WebClient().DownloadString("http://api.oodle.com/api/v2/listings?key=TEST&region=region_value&category=category_value&format=json");

JavaScriptSerializer ser = new JavaScriptSerializer();

jsonOodleApi p = ser.Deserialize<jsonOodleApi>(jsonString);

我对 jsonOodleApi 的类定义是

public class jsonOodleApi
{
public oodleCurrent current;
public oodleListings[] listings;
public oodleMeta meta;

public string state { get; set; }

}

oodleCurrentoodleMeta 的定义我没有给出,因为它很完美!

oodleListings 的定义是

public class oodleListings
{
public string id { get; set; }
public string title { get; set; }

public oodleListingsUser user;

// I have skipped some of fields because it have no issue at all.

}

oodleListingsUser 的定义是

public class oodleListingsUser
{
public string id { get; set; }
public string url { get; set; }
public string name { get; set; }
public string photo { get; set; }
}

问题是我的 jsonString 有时只返回一个用户值(oodleListingsUser 类型),有时返回用户数组,有时返回 null 用户!

当它只返回一个用户时,它运行得非常好!没问题。

但是当它返回用户数组时,bloom ! 发生错误 Type 'oodleListingsUser' is not supported for deserialization of array.

即使我已经尝试过 public oodleListingsUser[] user 但它会给出错误

No parameterless constructor defined for type of 'oodleListingsUser[]'

对于只返回一个用户的值!

现在我应该怎么做才能解决这个问题?

最佳答案

尝试:

public oodleListings[] listings = new oodleListings[0]; 

或者将其设为 List<oodleListings>也许吧。

关于c# - 系统.MissingMethodException : Error while deserialization of json array,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9173811/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com