Может ли кто-нибудь помочь написать Newtonsoft JSON Deserializer для моего формата JSON.Newtonsoft JSON Deserialize Необходимая помощь
У меня есть следующий формат json.
{
"success": true,
"message": "Missing ajax operation. Please contact administrator.",
"data": {
"mode": "new",
"data": {
"1": {
"CustomerCode": "CUST00001",
"Name": "Dell Asia Pacific Sdn. Bhd.",
"Add1": "Plot 76 Mukim 11, Bukit Tengah Industrial Park; Bukit Mertajam; Pulau Pinang; 14000",
"Add2": "",
"Add3": "",
"Daddr1": "Level 21, Suite 21.01, The Gardens South Tower, Mid Valley City, Lingkaran Syed Putra, ; Kuala Lumpur; Wilayah Persekutuan; 59200",
"Daddr2": "",
"Daddr3": "",
"Attn": "",
"Phone": "",
"PhoneA": "",
"Fax": "",
"Area": "",
"Agent": "",
"Email": "",
"CurrCode": "MYR",
"Business": "",
"Term": "30 Days"
},
"2": {
"CustomerCode": "CUST00002",
"Name": "Intel Technology Sdn Bhd",
"Add1": "Bayan Lepas Free Industrial Zone,Phase 3,Halaman Kampung Jawa; Bayan Lepas; Pulau Pinang; 11900",
"Add2": "",
"Add3": "",
"Daddr1": "1st Flr,Standard Chartered Bank Chambers,Lebuh Pantai;Penang; Kuala Lumpur; Wilayah Persekutuan; 10300",
"Daddr2": "",
"Daddr3": "",
"Attn": "",
"Phone": "",
"PhoneA": "",
"Fax": "",
"Area": "",
"Agent": "",
"Email": "",
"CurrCode": "MYR",
"Business": "",
"Term": "30 Days"
},
"3": {
"CustomerCode": "CUST00003",
"Name": "Petronas Carigali Sdn. Bhd.",
"Add1": "Tower 1, Petronas Twin Towers,Kuala Lumpur City Centre,; Kuala Lumpur; Wilayah Persekutuan; 50088",
"Add2": "",
"Add3": "",
"Daddr1": "Tower 1,Petronas Twin Towers,K.L.City Centre; Kuala Lumpur; Wilayah Persekutuan; 50088",
"Daddr2": "",
"Daddr3": "",
"Attn": "",
"Phone": "",
"PhoneA": "",
"Fax": "",
"Area": "",
"Agent": "",
"Email": "",
"CurrCode": "MYR",
"Business": "",
"Term": "30 Days"
}
}
}
}
и я следующая структура классов
public class CustomerInfo
{
public string CustomerCode { get; set; }
public string Name { get; set; }
public string Add1 { get; set; }
public string Add2 { get; set; }
public string Add3 { get; set; }
public string Daddr1 { get; set; }
public string Daddr2 { get; set; }
public string Daddr3 { get; set; }
public string Attn { get; set; }
public string Phone { get; set; }
public string PhoneA { get; set; }
public string Fax { get; set; }
public string Area { get; set; }
public string Agent { get; set; }
public string Email { get; set; }
public string CurrCode { get; set; }
public string Business { get; set; }
public string Term { get; set; }
}
public class CustomerData
{
public CustomerInfo customerInfo { get; set; }
}
public class Data
{
public string mode { get; set; }
public CustomerData custdata { get; set; }
}
public class CustomerRootObject
{
public bool success { get; set; }
public string message { get; set; }
public Data data { get; set; }
}
}
У меня есть трудности разобрать этот формат JSON я написал следующее, но он не работает какой-либо помощи высоко ценится.
List<CustomerRootObject> customerlist = JsonConvert.DeserializeObject<List<CustomerRootObject>> (json);
foreach (var info in customerlist) {Console.WriteLine(info.data.custdata.CustomerCode);}
Каким образом это не работает? Вы получаете сообщение об ошибке? – Tobberoth
Я не получаю проблему синтаксического анализа, но foreach не вызван. – user2479042
Вы должны, вероятно, отладить его и посмотреть, что происходит. Вопрос: почему вы десериализуете «List» вместо «CustomerRootObject»? –
Tobberoth