当前位置: 首页 > 面试题库 >

无法将当前JSON数组(例如[1,2,3])反序列化为type

堵浩波
2023-03-14
问题内容

我有一堂这样的课。

public  class MyStok
{
    public int STId { get; set; }
    public int SM { get; set; }
    public string CA { get; set; }
    public string Br { get; set; }
    public string BNo { get; set; }
    public decimal Vat { get; set; }
    public decimal Price { get; set; }
}

我这样绝望。

string sc=  e.ExtraParams["sc"].ToString();
MyStok myobj = JSON.Deserialize<MyStok>(sc);

我的输出在小提琴手上看起来像这样(字符串sc)

[
    {
        "STId": 2,
        "CA": "hbh",
        "Br": "jhnj",
        "SM": 20,
        "Vat": 10,
        "Price": 566,
        "BNo": "1545545"
    }
]

但是我收到错误消息:无法将当前的JSON数组(例如[1,2,3])反序列化为这些代码中的错误类型。

谢谢 。


问题答案:

看起来该字符串包含其中包含单个MyStok对象的数组。如果从输入的两端删除方括号,则应该能够将数据反序列化为单个对象:

MyStok myobj = JSON.Deserialize<MyStok>(sc.Substring(1, sc.Length-2));

您也可以将数组反序列化为MyStok对象列表,然后将对象从索引零处取出。

var myobjList = JSON.Deserialize<List<MyStok>>(sc);
var myObj = myobjList[0];


 类似资料:
  • 我有这个JSON: 我有以下课程: 我正在尝试使用以下代码反序列化上述JSON: 但我得到了这个错误: 无法将当前JSON数组(例如[1,2,3])反序列化为类型“test.Model”。RetrieveMultipleResponse'因为该类型需要一个JSON对象(例如{“name”:“value”})才能正确反序列化。要修复此错误,请将JSON更改为JSON对象(例如{“name”:“val

  • 我有这个JSON: 我有这些类: 我正在尝试使用下面的代码反序列化上面的JSON: 但我得到了这个错误: 无法将当前JSON数组(例如[1,2,3])反序列化为类型“Test.Model.RetrieveMultipleResponse”,因为该类型需要一个JSON对象(例如{“name”:“value”})才能正确反序列化.要修复此错误,可以将JSON更改为JSON对象(例如{“name”:“v

  • 问题内容: 我正在尝试将json数据反序列化为模型类,但是失败了。这是我的工作: 这是我的模型的样子: 您可以看到我到达这里的Json:http : //api.worldbank.org/incomeLevels/LIC/countries? format=json 这是我得到的错误: 无法将JSON数组反序列化为“ Mvc4AsyncSample.Models.CountryModel”类型。

  • 问题内容: 我在反序列化一些json数据,获取InvalidCastExceptions之类的问题。 谁能指出我正确的方向? 这是我要反序列化的json; [{“ OrderId”:0,“名称”:“摘要”,“ MaxLen”:“ 200”},{“ OrderId”:1,“名称”:“详细信息”,“ MaxLen”:“ 0”}] 这是我的代码; 问题答案: OrderId是json中的一个Int(请注

  • 我是一个新手,正在尝试编写一个简单的应用程序,从大学校中提取一些学校数据。组织。json数据如下所示: 我的结构如下所示: 当我运行代码时,我得到“json:无法将对象解组为[]main.SchoolStruct类型的Go值” 我正在使用gopencils库来提出我的请求,并成功地将其用于非常简单的请求。你知道我可能做错了什么吗?

  • 问题背景: 我正在使用牛顿软件 JSON.NET 将 XML 响应从 AWS 服务解封为 C# 对象结构。 问题: 当我尝试反序列化 类属性时,我收到以下错误消息: 我应该补充一点,我无法控制返回的XML,反过来也无法控制我需要将响应反序列化为的大型对象结构。 代码: 以下是“ImageSet”的C#类模型 这是一个显示JSON响应的屏幕截图,突出显示了抛出错误的< code>Category属性