gpt4 book ai didi

c# - JavaScriptSerializer.反序列化数组

转载 作者:IT王子 更新时间:2023-10-29 04:41:08 26 4
gpt4 key购买 nike

我在反序列化 .NET MVC3 中的数组时遇到问题,我们将不胜感激。

这是代码片段:

using (HttpWebResponse response = request.GetResponse() as HttpWebResponse)
using (StreamReader reader = new StreamReader(response.GetResponseStream())) {
JavaScriptSerializer jsSerializer = new JavaScriptSerializer();
string jsonData = reader.ReadToEnd();
result = (BigCommerceOrderProducts)jsSerializer.Deserialize<BigCommerceOrderProducts>(jsonData);
}

这是 JSON 作为 jsonData 返回的数据字符串的子集。我删除了额外的字段。

"[
{\"id\":33,\"order_id\":230025,...},
{\"id\":34,\"order_id\":230025,...}
]"

对象如下:

[Serializable]
public class BigCommerceOrderProducts {
public List<BigCommerceOrderProduct> Data { get; set; }
}

[Serializable]
public class BigCommerceOrderProduct {
public int Id { get; set; }
public int Order_id { get; set; }
...
}

我收到这个错误:

"Type 'Pxo.Models.BigCommerce.BigCommerceOrderProducts' is not supported for deserialization of an array.

有什么想法吗?

最佳答案

您应该反序列化您的 json 字符串以键入 List<BigCommerceOrderProduct> .不需要 BigCommerceOrderProducts

var myobj = jsSerializer.Deserialize<List<BigCommerceOrderProduct>>(jsonData);

关于c# - JavaScriptSerializer.反序列化数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9033730/

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