Convert nested JSON into a dictionaryWhat is the difference between String and string in C#?Safely turning a JSON string into an objectWhat is the best way to iterate over a dictionary?How do I format a Microsoft JSON date?Can comments be used in JSON?How can I pretty-print JSON in a shell script?Case insensitive 'Contains(string)'What is the correct JSON content type?Why does Google prepend while(1); to their JSON responses?Convert JS object to JSON string
How to think about joining a company whose business I do not understand?
How to dismiss intrusive questions from a colleague with whom I don't work?
Count the frequency of items in an array
Why does my air conditioner still run, even when it is cooler outside than in?
How many spells can a level 1 wizard learn?
Are there reliable, formulaic ways to form chords on the guitar?
IV curve on this solar panel datasheet
What is the evidence on the danger of feeding whole blueberries and grapes to infants and toddlers?
Is there any road between the CA State Route 120 and Sherman Pass Road (Forest Route 22S0) that crosses Yosemite/Serria/Sequoia National Park/Forest?
Chess software to analyze games
Find Two largest numbers in a list without using Array
Do living authors still get paid royalties for their old work?
90s(?) book series about two people transported to a parallel medieval world, she joins city watch, he becomes wizard
Does the Symbiotic Entity damage apply to a creature hit by the secondary damage of Green Flame Blade?
How big would a Daddy Longlegs Spider need to be to kill an average Human?
How to decide whether an eshop is safe or compromised
How do you call it when two celestial bodies come as close to each other as they will in their current orbits?
Writing/buying Seforim rather than Sefer Torah
Can others monetize my project with GPLv3?
Are there any legal requirements concerning airline pilots and their watches?
Derivation of D-dimensional Laplacian in spherical coordinates
Why do some academic journals requires a separate "summary" paragraph in addition to an abstract?
What is the latest version of SQL Server native client that is compatible with Sql Server 2008 r2
How did Apollo 15's depressurization work?
Convert nested JSON into a dictionary
What is the difference between String and string in C#?Safely turning a JSON string into an objectWhat is the best way to iterate over a dictionary?How do I format a Microsoft JSON date?Can comments be used in JSON?How can I pretty-print JSON in a shell script?Case insensitive 'Contains(string)'What is the correct JSON content type?Why does Google prepend while(1); to their JSON responses?Convert JS object to JSON string
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;
I have got a nested JSON which needs to be converted in to a dictionary. I'm getting an error as follows.
Error converting value "12345" to type 'System.Collections.Generic.IDictionary`2[System.String,System.String]'. Path 'requestId', line 2, position 24.
This is the code i have tried.
public static void LoadJson()
using (StreamReader r = new StreamReader("D:SampleJson.json"))
string json = r.ReadToEnd();
var mergeCollection =
JsonConvert.DeserializeObject<IDictionary<string, IDictionary<string, string>>>(json);
The JSON string is
"requestId": "12345",
"financials":
"accountFee": 1234.45,
"dailyAmount": 1234.45,
"redemptionAmount": 1234.45
,
"sundry":
"arrearsBalance": 1234.45,
"unclearAmount": 1234.45,
"interestAmount": 1234.45,
"dailyInterestAmount": 1.5
,
"savings":
"capitalBalance": 1234.45,
"unclearAmount": 1234.45
,
"overpayments":
"capitalBalance": 1234.45,
"unclearAmount": 1234.45
,
"availabeFunds":
"capitalBalance": 1234.45,
"arrearsBalance": 1234.45,
"unclearAmount": 1234.45,
"interestAmount": 1234.45,
"feeAmount": 1234.45,
"dailyInterestAmount": 1.5
,
"loans": [
"lsRate": 1234.45,
"capitalBalance": 1234.45,
"arrearsBalance": 1234.45,
"unclearAmount": 1234.45,
"interestAmount": 1234.45,
"feeAmount": 1234.45,
"dailyInterestAmount": 1.5
,
"lsRate": 1234.45,
"capitalBalance": 1234.45,
"arrearsBalance": 1234.45,
"unclearAmount": 1234.45,
"interestAmount": 1234.45,
"feeAmount": 1234.45,
"dailyInterestAmount": 1.5
],
"cashbackCharges": [
"description": "some charge type",
"feeAmount": 1234.45
,
"description": "some charge type",
"feeAmount": 1234.45
],
"statementText": [
"sequence": 1,
"text": "The information below shows the outstanding capital and overdue balances for each loan of the mortgage account (loan scheme). It also details the expected charges for each loan scheme up to the redemption date. The figure assumes that no further credits to the account will be received."
,
"sequence": 2,
"text": "The amount needed to pay back (redeem) the mortgage will change if there are any unpaid cheques, recalled Direct Debits (which have been used in the calculation), interest rate changes, and/or extra charges. In the case of a Flexible or Flexible Offset mortgage, if money is taken from the Available Funds (and/or withdrawal of savings in the case of a Flexible Offset mortgage) after the date of issue, the amount will also change."
]
And the class file is generated as follows
public class RedemptionInfo
public string requestId get; set;
public Financials financials get; set;
public Sundry sundry get; set;
public Savings savings get; set;
public Overpayments overpayments get; set;
public AvailabeFunds availabeFunds get; set;
public List<Loan> loans get; set;
public List<CashbackCharge> cashbackCharges get; set;
public List<StatementText> statementText get; set;
public class Financials
public string accountFee get; set;
public string dailyAmount get; set;
public string redemptionAmount get; set;
public class Sundry
public string arrearsBalance get; set;
public string unclearAmount get; set;
public string interestAmount get; set;
public string dailyInterestAmount get; set;
public class Savings
public string capitalBalance get; set;
public string unclearAmount get; set;
public class Overpayments
public string capitalBalance get; set;
public string unclearAmount get; set;
public class AvailabeFunds
public string capitalBalance get; set;
public string arrearsBalance get; set;
public string unclearAmount get; set;
public string interestAmount get; set;
public string feeAmount get; set;
public string dailyInterestAmount get; set;
public class Loan
public string lsRate get; set;
public string capitalBalance get; set;
public string arrearsBalance get; set;
public string unclearAmount get; set;
public string interestAmount get; set;
public string feeAmount get; set;
public string dailyInterestAmount get; set;
public class CashbackCharge
public string description get; set;
public string feeAmount get; set;
public class StatementText
public int sequence get; set;
public string text get; set;
c# json json-deserialization
add a comment |
I have got a nested JSON which needs to be converted in to a dictionary. I'm getting an error as follows.
Error converting value "12345" to type 'System.Collections.Generic.IDictionary`2[System.String,System.String]'. Path 'requestId', line 2, position 24.
This is the code i have tried.
public static void LoadJson()
using (StreamReader r = new StreamReader("D:SampleJson.json"))
string json = r.ReadToEnd();
var mergeCollection =
JsonConvert.DeserializeObject<IDictionary<string, IDictionary<string, string>>>(json);
The JSON string is
"requestId": "12345",
"financials":
"accountFee": 1234.45,
"dailyAmount": 1234.45,
"redemptionAmount": 1234.45
,
"sundry":
"arrearsBalance": 1234.45,
"unclearAmount": 1234.45,
"interestAmount": 1234.45,
"dailyInterestAmount": 1.5
,
"savings":
"capitalBalance": 1234.45,
"unclearAmount": 1234.45
,
"overpayments":
"capitalBalance": 1234.45,
"unclearAmount": 1234.45
,
"availabeFunds":
"capitalBalance": 1234.45,
"arrearsBalance": 1234.45,
"unclearAmount": 1234.45,
"interestAmount": 1234.45,
"feeAmount": 1234.45,
"dailyInterestAmount": 1.5
,
"loans": [
"lsRate": 1234.45,
"capitalBalance": 1234.45,
"arrearsBalance": 1234.45,
"unclearAmount": 1234.45,
"interestAmount": 1234.45,
"feeAmount": 1234.45,
"dailyInterestAmount": 1.5
,
"lsRate": 1234.45,
"capitalBalance": 1234.45,
"arrearsBalance": 1234.45,
"unclearAmount": 1234.45,
"interestAmount": 1234.45,
"feeAmount": 1234.45,
"dailyInterestAmount": 1.5
],
"cashbackCharges": [
"description": "some charge type",
"feeAmount": 1234.45
,
"description": "some charge type",
"feeAmount": 1234.45
],
"statementText": [
"sequence": 1,
"text": "The information below shows the outstanding capital and overdue balances for each loan of the mortgage account (loan scheme). It also details the expected charges for each loan scheme up to the redemption date. The figure assumes that no further credits to the account will be received."
,
"sequence": 2,
"text": "The amount needed to pay back (redeem) the mortgage will change if there are any unpaid cheques, recalled Direct Debits (which have been used in the calculation), interest rate changes, and/or extra charges. In the case of a Flexible or Flexible Offset mortgage, if money is taken from the Available Funds (and/or withdrawal of savings in the case of a Flexible Offset mortgage) after the date of issue, the amount will also change."
]
And the class file is generated as follows
public class RedemptionInfo
public string requestId get; set;
public Financials financials get; set;
public Sundry sundry get; set;
public Savings savings get; set;
public Overpayments overpayments get; set;
public AvailabeFunds availabeFunds get; set;
public List<Loan> loans get; set;
public List<CashbackCharge> cashbackCharges get; set;
public List<StatementText> statementText get; set;
public class Financials
public string accountFee get; set;
public string dailyAmount get; set;
public string redemptionAmount get; set;
public class Sundry
public string arrearsBalance get; set;
public string unclearAmount get; set;
public string interestAmount get; set;
public string dailyInterestAmount get; set;
public class Savings
public string capitalBalance get; set;
public string unclearAmount get; set;
public class Overpayments
public string capitalBalance get; set;
public string unclearAmount get; set;
public class AvailabeFunds
public string capitalBalance get; set;
public string arrearsBalance get; set;
public string unclearAmount get; set;
public string interestAmount get; set;
public string feeAmount get; set;
public string dailyInterestAmount get; set;
public class Loan
public string lsRate get; set;
public string capitalBalance get; set;
public string arrearsBalance get; set;
public string unclearAmount get; set;
public string interestAmount get; set;
public string feeAmount get; set;
public string dailyInterestAmount get; set;
public class CashbackCharge
public string description get; set;
public string feeAmount get; set;
public class StatementText
public int sequence get; set;
public string text get; set;
c# json json-deserialization
Since your nested JSON includes both strings and records, you either need to convert your strings (like "12345") to a record, or store them into classes that can store either a string or a record.
– Dour High Arch
Mar 27 at 15:54
Thank you for your reply. But can you please tell me how i include both strings and records. Sorry i'm not sure what is records.
– Leo
Mar 29 at 9:06
Why do you need a dictionary? Why not deserialize into the classes you generated?
– Brian Rogers
Mar 31 at 20:36
add a comment |
I have got a nested JSON which needs to be converted in to a dictionary. I'm getting an error as follows.
Error converting value "12345" to type 'System.Collections.Generic.IDictionary`2[System.String,System.String]'. Path 'requestId', line 2, position 24.
This is the code i have tried.
public static void LoadJson()
using (StreamReader r = new StreamReader("D:SampleJson.json"))
string json = r.ReadToEnd();
var mergeCollection =
JsonConvert.DeserializeObject<IDictionary<string, IDictionary<string, string>>>(json);
The JSON string is
"requestId": "12345",
"financials":
"accountFee": 1234.45,
"dailyAmount": 1234.45,
"redemptionAmount": 1234.45
,
"sundry":
"arrearsBalance": 1234.45,
"unclearAmount": 1234.45,
"interestAmount": 1234.45,
"dailyInterestAmount": 1.5
,
"savings":
"capitalBalance": 1234.45,
"unclearAmount": 1234.45
,
"overpayments":
"capitalBalance": 1234.45,
"unclearAmount": 1234.45
,
"availabeFunds":
"capitalBalance": 1234.45,
"arrearsBalance": 1234.45,
"unclearAmount": 1234.45,
"interestAmount": 1234.45,
"feeAmount": 1234.45,
"dailyInterestAmount": 1.5
,
"loans": [
"lsRate": 1234.45,
"capitalBalance": 1234.45,
"arrearsBalance": 1234.45,
"unclearAmount": 1234.45,
"interestAmount": 1234.45,
"feeAmount": 1234.45,
"dailyInterestAmount": 1.5
,
"lsRate": 1234.45,
"capitalBalance": 1234.45,
"arrearsBalance": 1234.45,
"unclearAmount": 1234.45,
"interestAmount": 1234.45,
"feeAmount": 1234.45,
"dailyInterestAmount": 1.5
],
"cashbackCharges": [
"description": "some charge type",
"feeAmount": 1234.45
,
"description": "some charge type",
"feeAmount": 1234.45
],
"statementText": [
"sequence": 1,
"text": "The information below shows the outstanding capital and overdue balances for each loan of the mortgage account (loan scheme). It also details the expected charges for each loan scheme up to the redemption date. The figure assumes that no further credits to the account will be received."
,
"sequence": 2,
"text": "The amount needed to pay back (redeem) the mortgage will change if there are any unpaid cheques, recalled Direct Debits (which have been used in the calculation), interest rate changes, and/or extra charges. In the case of a Flexible or Flexible Offset mortgage, if money is taken from the Available Funds (and/or withdrawal of savings in the case of a Flexible Offset mortgage) after the date of issue, the amount will also change."
]
And the class file is generated as follows
public class RedemptionInfo
public string requestId get; set;
public Financials financials get; set;
public Sundry sundry get; set;
public Savings savings get; set;
public Overpayments overpayments get; set;
public AvailabeFunds availabeFunds get; set;
public List<Loan> loans get; set;
public List<CashbackCharge> cashbackCharges get; set;
public List<StatementText> statementText get; set;
public class Financials
public string accountFee get; set;
public string dailyAmount get; set;
public string redemptionAmount get; set;
public class Sundry
public string arrearsBalance get; set;
public string unclearAmount get; set;
public string interestAmount get; set;
public string dailyInterestAmount get; set;
public class Savings
public string capitalBalance get; set;
public string unclearAmount get; set;
public class Overpayments
public string capitalBalance get; set;
public string unclearAmount get; set;
public class AvailabeFunds
public string capitalBalance get; set;
public string arrearsBalance get; set;
public string unclearAmount get; set;
public string interestAmount get; set;
public string feeAmount get; set;
public string dailyInterestAmount get; set;
public class Loan
public string lsRate get; set;
public string capitalBalance get; set;
public string arrearsBalance get; set;
public string unclearAmount get; set;
public string interestAmount get; set;
public string feeAmount get; set;
public string dailyInterestAmount get; set;
public class CashbackCharge
public string description get; set;
public string feeAmount get; set;
public class StatementText
public int sequence get; set;
public string text get; set;
c# json json-deserialization
I have got a nested JSON which needs to be converted in to a dictionary. I'm getting an error as follows.
Error converting value "12345" to type 'System.Collections.Generic.IDictionary`2[System.String,System.String]'. Path 'requestId', line 2, position 24.
This is the code i have tried.
public static void LoadJson()
using (StreamReader r = new StreamReader("D:SampleJson.json"))
string json = r.ReadToEnd();
var mergeCollection =
JsonConvert.DeserializeObject<IDictionary<string, IDictionary<string, string>>>(json);
The JSON string is
"requestId": "12345",
"financials":
"accountFee": 1234.45,
"dailyAmount": 1234.45,
"redemptionAmount": 1234.45
,
"sundry":
"arrearsBalance": 1234.45,
"unclearAmount": 1234.45,
"interestAmount": 1234.45,
"dailyInterestAmount": 1.5
,
"savings":
"capitalBalance": 1234.45,
"unclearAmount": 1234.45
,
"overpayments":
"capitalBalance": 1234.45,
"unclearAmount": 1234.45
,
"availabeFunds":
"capitalBalance": 1234.45,
"arrearsBalance": 1234.45,
"unclearAmount": 1234.45,
"interestAmount": 1234.45,
"feeAmount": 1234.45,
"dailyInterestAmount": 1.5
,
"loans": [
"lsRate": 1234.45,
"capitalBalance": 1234.45,
"arrearsBalance": 1234.45,
"unclearAmount": 1234.45,
"interestAmount": 1234.45,
"feeAmount": 1234.45,
"dailyInterestAmount": 1.5
,
"lsRate": 1234.45,
"capitalBalance": 1234.45,
"arrearsBalance": 1234.45,
"unclearAmount": 1234.45,
"interestAmount": 1234.45,
"feeAmount": 1234.45,
"dailyInterestAmount": 1.5
],
"cashbackCharges": [
"description": "some charge type",
"feeAmount": 1234.45
,
"description": "some charge type",
"feeAmount": 1234.45
],
"statementText": [
"sequence": 1,
"text": "The information below shows the outstanding capital and overdue balances for each loan of the mortgage account (loan scheme). It also details the expected charges for each loan scheme up to the redemption date. The figure assumes that no further credits to the account will be received."
,
"sequence": 2,
"text": "The amount needed to pay back (redeem) the mortgage will change if there are any unpaid cheques, recalled Direct Debits (which have been used in the calculation), interest rate changes, and/or extra charges. In the case of a Flexible or Flexible Offset mortgage, if money is taken from the Available Funds (and/or withdrawal of savings in the case of a Flexible Offset mortgage) after the date of issue, the amount will also change."
]
And the class file is generated as follows
public class RedemptionInfo
public string requestId get; set;
public Financials financials get; set;
public Sundry sundry get; set;
public Savings savings get; set;
public Overpayments overpayments get; set;
public AvailabeFunds availabeFunds get; set;
public List<Loan> loans get; set;
public List<CashbackCharge> cashbackCharges get; set;
public List<StatementText> statementText get; set;
public class Financials
public string accountFee get; set;
public string dailyAmount get; set;
public string redemptionAmount get; set;
public class Sundry
public string arrearsBalance get; set;
public string unclearAmount get; set;
public string interestAmount get; set;
public string dailyInterestAmount get; set;
public class Savings
public string capitalBalance get; set;
public string unclearAmount get; set;
public class Overpayments
public string capitalBalance get; set;
public string unclearAmount get; set;
public class AvailabeFunds
public string capitalBalance get; set;
public string arrearsBalance get; set;
public string unclearAmount get; set;
public string interestAmount get; set;
public string feeAmount get; set;
public string dailyInterestAmount get; set;
public class Loan
public string lsRate get; set;
public string capitalBalance get; set;
public string arrearsBalance get; set;
public string unclearAmount get; set;
public string interestAmount get; set;
public string feeAmount get; set;
public string dailyInterestAmount get; set;
public class CashbackCharge
public string description get; set;
public string feeAmount get; set;
public class StatementText
public int sequence get; set;
public string text get; set;
c# json json-deserialization
c# json json-deserialization
asked Mar 27 at 14:44
LeoLeo
87 bronze badges
87 bronze badges
Since your nested JSON includes both strings and records, you either need to convert your strings (like "12345") to a record, or store them into classes that can store either a string or a record.
– Dour High Arch
Mar 27 at 15:54
Thank you for your reply. But can you please tell me how i include both strings and records. Sorry i'm not sure what is records.
– Leo
Mar 29 at 9:06
Why do you need a dictionary? Why not deserialize into the classes you generated?
– Brian Rogers
Mar 31 at 20:36
add a comment |
Since your nested JSON includes both strings and records, you either need to convert your strings (like "12345") to a record, or store them into classes that can store either a string or a record.
– Dour High Arch
Mar 27 at 15:54
Thank you for your reply. But can you please tell me how i include both strings and records. Sorry i'm not sure what is records.
– Leo
Mar 29 at 9:06
Why do you need a dictionary? Why not deserialize into the classes you generated?
– Brian Rogers
Mar 31 at 20:36
Since your nested JSON includes both strings and records, you either need to convert your strings (like "12345") to a record, or store them into classes that can store either a string or a record.
– Dour High Arch
Mar 27 at 15:54
Since your nested JSON includes both strings and records, you either need to convert your strings (like "12345") to a record, or store them into classes that can store either a string or a record.
– Dour High Arch
Mar 27 at 15:54
Thank you for your reply. But can you please tell me how i include both strings and records. Sorry i'm not sure what is records.
– Leo
Mar 29 at 9:06
Thank you for your reply. But can you please tell me how i include both strings and records. Sorry i'm not sure what is records.
– Leo
Mar 29 at 9:06
Why do you need a dictionary? Why not deserialize into the classes you generated?
– Brian Rogers
Mar 31 at 20:36
Why do you need a dictionary? Why not deserialize into the classes you generated?
– Brian Rogers
Mar 31 at 20:36
add a comment |
0
active
oldest
votes
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55380025%2fconvert-nested-json-into-a-dictionarystring-string%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
0
active
oldest
votes
0
active
oldest
votes
active
oldest
votes
active
oldest
votes
Is this question similar to what you get asked at work? Learn more about asking and sharing private information with your coworkers using Stack Overflow for Teams.
Is this question similar to what you get asked at work? Learn more about asking and sharing private information with your coworkers using Stack Overflow for Teams.
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55380025%2fconvert-nested-json-into-a-dictionarystring-string%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Since your nested JSON includes both strings and records, you either need to convert your strings (like "12345") to a record, or store them into classes that can store either a string or a record.
– Dour High Arch
Mar 27 at 15:54
Thank you for your reply. But can you please tell me how i include both strings and records. Sorry i'm not sure what is records.
– Leo
Mar 29 at 9:06
Why do you need a dictionary? Why not deserialize into the classes you generated?
– Brian Rogers
Mar 31 at 20:36