【发布时间】:2020-05-06 20:16:32
【问题描述】:
我正在尝试将一个大的 JSON 数组解析为一个 c# 对象。现在我知道了将具有匹配键的类与 JSON 对象匹配然后将 JSON 对象的每个值分配给 c# 类中的匹配键的常规方法。但这对于我的目的来说效率非常低,因为我在这里处理非常大的 JSON 对象是一个例子:
[{
"storeId": "331",
"storeName": "Bergen, Lagunen",
"status": "Open",
"address": {
"street": "Laguneveien 1",
"postalCode": "5239",
"city": "Rådal",
"gpsCoord": "60.297116;5.331159",
"globalLocationNumber": "7080003251008",
"organisationNumber": "888039902"
},
"telephone": "22 01 50 00",
"email": "kundesenter@vinmonopolet.no",
"category": "6",
"openingHours": {
"regularHours": [{
"dayOfTheWeek": "Monday",
"openingTime": "10:00",
"closingTime": "18:00",
"closed": false
}, {
"dayOfTheWeek": "Tuesday",
"openingTime": "10:00",
"closingTime": "18:00",
"closed": false
}, {
"dayOfTheWeek": "Wednesday",
"openingTime": "10:00",
"closingTime": "18:00",
"closed": false
}, {
"dayOfTheWeek": "Thursday",
"openingTime": "10:00",
"closingTime": "18:00",
"closed": false
}, {
"dayOfTheWeek": "Friday",
"openingTime": "10:00",
"closingTime": "18:00",
"closed": false
}, {
"dayOfTheWeek": "Saturday",
"openingTime": "10:00",
"closingTime": "15:00",
"closed": false
}, {
"dayOfTheWeek": "Sunday",
"openingTime": "",
"closingTime": "",
"closed": true
}],
"exceptionHours": [{
"date": "2020-05-21",
"openingTime": "",
"closingTime": "",
"message": "Stengt Kristi himmelfartsdag"
}]
},
"lastChanged": {
"date": "2020-05-04",
"time": "00:02:04"
}
}]
有什么方法可以像在 javascript 中使用 JSON.parse 那样动态地将其转换为 c# 对象?
【问题讨论】:
-
查看 Newtonsoft.Json,尤其是 JArray.Parse 方法。
-
我不明白为什么你不应该创建一个匹配你的对象的类。它对我来说似乎不是特别大