Поскольку ваш объект является сложной моделью из ваших данных JSON. Вы не можете использовать DataTable
нести его.
Так что я бы написал класс моделей для его переноса.
public class Order
{
public string SubOrderNo { get; set; }
public string ItemNo { get; set; }
public string ItemType { get; set; }
public string ItemName { get; set; }
public string TemplateName { get; set; }
public string ObjectType { get; set; }
public string ObjectId { get; set; }
public string SalesStartDate { get; set; }
public string InfoText { get; set; }
public object Attachment { get; set; }
public object TemplateImage { get; set; }
public string ApprovedBy { get; set; }
public string ExpectedDeliveryDate { get; set; }
public object Context { get; set; }
public object TemplateDescription { get; set; }
public int ColorStatus { get; set; }
public List<object> spArticles { get; set; }
}
public class RootObject
{
public List<Order> Orders { get; set; }
public object JsonOrders { get; set; }
}
Получить модель будет как.
var result= JsonConvert.DeserializeObject<RootObject>(jsonContent);
Если вы хотите разрешить JSON DataTable
, вы можете прочитать ключ JSON = Order
но с "spArticles": []
будет ошибка, если вы хотите DeserializeObject
для DataTable
[{
"SubOrderNo": "0582715",
"ItemNo": "20415541",
"ItemType": "ART",
"ItemName": "Fish",
"TemplateName": "TP1234",
"ObjectType": "MPP",
"ObjectId": "PE1234",
"SalesStartDate": "2018-08-01",
"InfoText": "Some dummy text. This till be replaced later with some awesome text instead. Happy Fish!",
"Attachment": null,
"TemplateImage": null,
"ApprovedBy": "Me",
"ExpectedDeliveryDate": "2017-10-20",
"Context": null,
"TemplateDescription": null,
"ColorStatus": 0,
"spArticles": [] //<--- There will excute a error, I report for Json.net will be fixed in future.
}]
https://github.com/JamesNK/Newtonsoft.Json/issues/1763
Поэтому я бы предложил вам использовать модели для переноса данных JSON вместо DataTable