如何在C#中向API发送JSON字符串数组

cbwuti44  于 12个月前  发布在  C#
关注(0)|答案(2)|浏览(186)

我希望发送这个JSON字符串数组到我的API。我有几个问题.

  • 我的类模型也应该是数组吗?
  • 当我重新定义时,我得到一个错误消息:无法将当前JSON数组(例如[1,2,3])重新定义为类型“Model”,因为该类型需要JSON对象(例如{“name”:“value”})才能正确重新定义。

要发送的正文为:

[
{
    "ObjectId" : "1270583B-208A-427F-8B1E-B20E6271D0FE",
    "ObjectTypeId" : 1
},
{
    "ObjectId" : "1270583B-208A-427F-8B1E-B20E6271D0FE",
    "ObjectTypeId" : 2
},
{
    "ObjectId" : "1270583B-208A-427F-8B1E-B20E6271D0FE",
    "ObjectTypeId" : 3
}
]

字符串
我的模型类是:

class Model
{

        public string ObjectId { get; set; }
        public int ObjectTypeId { get; set; }

}


我把我的Http内容如下:

static object Content;
string HttpContent= "[{\"ObjectId\" : \"1270583B-208A-427F-8B1E- B20E6271D0FE\" , \"ObjectTypeId\" : 1 }]";
Content = JsonConvert.DeserializeObject<Model>(Httpcontent);

eyh26e7m

eyh26e7m1#

您应该尝试将其转换为模型对象的列表。

Content = JsonConvert.DeserializeObject<List<Model>>(Httpcontent);

字符串

i7uaboj4

i7uaboj42#

解决方案是在我的模型中添加[]。谢谢你@Johannes.colmsee

Content = JsonConvert.DeserializeObject<Model[]>(Httpcontent);

字符串

相关问题