Извлечение объектов из массива JSON с помощью Newtonsoft JSON - PullRequest
1 голос
/ 01 декабря 2019

У меня есть данные JSON, такие как ниже

[{
    "CurrencyDenomination_JSON": "[{\"PK_MasterCurrencyDenomID\":1,\"CurrencyDenomination\":2000,\"NoofCurrency\":2,\"Total\":\"4000.00\",\"IsNote\":true},{\"PK_MasterCurrencyDenomID\":2,\"CurrencyDenomination\":500,\"NoofCurrency\":2,\"Total\":\"1000.00\",\"IsNote\":true}]"
}, {
    "CurrencyDenomination_JSON": "[{\"PK_MasterCurrencyDenomID\":1,\"CurrencyDenomination\":2000,\"NoofCurrency\":5,\"Total\":\"10000.00\",\"IsNote\":true},{\"PK_MasterCurrencyDenomID\":2,\"CurrencyDenomination\":500,\"NoofCurrency\":2,\"Total\":\"1000.00\",\"IsNote\":true}]"
}, {
    "CurrencyDenomination_JSON": "[{\"PK_MasterCurrencyDenomID\":1,\"CurrencyDenomination\":2000,\"NoofCurrency\":5,\"Total\":\"10000.00\",\"IsNote\":true},{\"PK_MasterCurrencyDenomID\":2,\"CurrencyDenomination\":500,\"NoofCurrency\":5,\"Total\":\"2500.00\",\"IsNote\":true}]"
}]

, и я хочу извлечь из них значение и ожидать, что ниже данные

[{
    "PK_MasterCurrencyDenomID": 1,
    "CurrencyDenomination": 2000,
    "NoofCurrency": 2,
    "Total": "4000.00",
    "IsNote": true
}, {
    "PK_MasterCurrencyDenomID": 2,
    "CurrencyDenomination": 500,
    "NoofCurrency": 2,
    "Total": "1000.00",
    "IsNote": true
}, {
    "PK_MasterCurrencyDenomID": 3,
    "CurrencyDenomination": 200,
    "NoofCurrency": 2,
    "Total": "400.00",
    "IsNote": true
}, {
    "PK_MasterCurrencyDenomID": 4,
    "CurrencyDenomination": 100,
    "NoofCurrency": 2,
    "Total": "200.00",
    "IsNote": true
}, {
    "PK_MasterCurrencyDenomID": 5,
    "CurrencyDenomination": 50,
    "NoofCurrency": 2,
    "Total": "100.00",
    "IsNote": true
}, {
    "PK_MasterCurrencyDenomID": 6,
    "CurrencyDenomination": 20,
    "NoofCurrency": 2,
    "Total": "40.00",
    "IsNote": true
}]

сделают это, я пишу ниже код и думаю,это неправильный способ сделать это, должен быть какой-то умный способ сделать это. Пожалуйста, предложите мне лучшую альтернативу.

JArray jsonArray = JArray.Parse(json);
List<MasterCurrencyDenomination> d = new List<MasterCurrencyDenomination>();
string strjson = string.Empty;
foreach (var item in jsonArray.Children())
{

strjson+= item["CurrencyDenomination_JSON"].ToString().Replace("[", "").Replace("]", ",");

}

d = JsonConvert.DeserializeObject<List<MasterCurrencyDenomination>>("["+strjson+"]");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...