Parsing Json string C#
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty height:90px;width:728px;box-sizing:border-box;
I am trying to parse a JSON string but I am getting an odd error:
Unable to cast object of type 'Newtonsoft.Json.Linq.JObject' to type 'Newtonsoft.Json.Linq.JProperty'
Would you check it and let me how I can get title
values from this JSON string!
[
"id":"14962106",
"title":"Why is Yahoo called Yahoo",
"link":"http://www.answers.com/Q/Why_is_Yahoo_called_Yahoo",
"is_answered":true
,
"id":"65001091",
"title":"Connecting yahoo IM to yahoo",
"link":"http://www.answers.com/Q/Connecting_yahoo_IM_to_yahoo",
"is_answered":true
,
"id":"45440021",
"title":"Why doesn't Yahoo recognize my Yahoo account",
"link":"http://www.answers.com/Q/Why_doesn%27t_Yahoo_recognize_my_Yahoo_account",
"is_answered":true
,
"id":"264383657",
"title":"How is Yahoo different from Yahoo Mail",
"link":"http://www.answers.com/Q/How_is_Yahoo_different_from_Yahoo_Mail",
"is_answered":true
,
"id":"11230021",
"title":"Does Yahoo block email",
"link":"http://www.answers.com/Q/Does_Yahoo_block_email",
"is_answered":true
,
"id":"11230461",
"title":"Is yahoo answers gone",
"link":"http://www.answers.com/Q/Is_yahoo_answers_gone",
"is_answered":true
,
"id":"12097857",
"title":"What is Yahoo BrowserPlus",
"link":"http://www.answers.com/Q/What_is_Yahoo_BrowserPlus",
"is_answered":true
,
"id":"100301924",
"title":"Is yahoo answers useful",
"link":"http://www.answers.com/Q/Is_yahoo_answers_useful",
"is_answered":true
,
"id":"107057666",
"title":"Are yahoo emails free",
"link":"http://www.answers.com/Q/Are_yahoo_emails_free",
"is_answered":true
,
"id":"107858033",
"title":"Is yahoo games free",
"link":"http://www.answers.com/Q/Is_yahoo_games_free",
"is_answered":true
]
JArray theamackersSuggesionResult = JArray.Parse(json);
foreach (JObject parsedObject in theamackersSuggesionResult.Children<JObject>())
foreach (JProperty parsedProperty in theamackersSuggesionResult)
string propertyName = parsedProperty.Name;
if (propertyName == "title")
MessageBox.Show(parsedProperty.Value.ToString());
KeywordSuggestionTable.Rows.Add(parsedProperty.Value.ToString());
KeywordResultDataGrid.Refresh();
c# json winforms json.net
add a comment |
I am trying to parse a JSON string but I am getting an odd error:
Unable to cast object of type 'Newtonsoft.Json.Linq.JObject' to type 'Newtonsoft.Json.Linq.JProperty'
Would you check it and let me how I can get title
values from this JSON string!
[
"id":"14962106",
"title":"Why is Yahoo called Yahoo",
"link":"http://www.answers.com/Q/Why_is_Yahoo_called_Yahoo",
"is_answered":true
,
"id":"65001091",
"title":"Connecting yahoo IM to yahoo",
"link":"http://www.answers.com/Q/Connecting_yahoo_IM_to_yahoo",
"is_answered":true
,
"id":"45440021",
"title":"Why doesn't Yahoo recognize my Yahoo account",
"link":"http://www.answers.com/Q/Why_doesn%27t_Yahoo_recognize_my_Yahoo_account",
"is_answered":true
,
"id":"264383657",
"title":"How is Yahoo different from Yahoo Mail",
"link":"http://www.answers.com/Q/How_is_Yahoo_different_from_Yahoo_Mail",
"is_answered":true
,
"id":"11230021",
"title":"Does Yahoo block email",
"link":"http://www.answers.com/Q/Does_Yahoo_block_email",
"is_answered":true
,
"id":"11230461",
"title":"Is yahoo answers gone",
"link":"http://www.answers.com/Q/Is_yahoo_answers_gone",
"is_answered":true
,
"id":"12097857",
"title":"What is Yahoo BrowserPlus",
"link":"http://www.answers.com/Q/What_is_Yahoo_BrowserPlus",
"is_answered":true
,
"id":"100301924",
"title":"Is yahoo answers useful",
"link":"http://www.answers.com/Q/Is_yahoo_answers_useful",
"is_answered":true
,
"id":"107057666",
"title":"Are yahoo emails free",
"link":"http://www.answers.com/Q/Are_yahoo_emails_free",
"is_answered":true
,
"id":"107858033",
"title":"Is yahoo games free",
"link":"http://www.answers.com/Q/Is_yahoo_games_free",
"is_answered":true
]
JArray theamackersSuggesionResult = JArray.Parse(json);
foreach (JObject parsedObject in theamackersSuggesionResult.Children<JObject>())
foreach (JProperty parsedProperty in theamackersSuggesionResult)
string propertyName = parsedProperty.Name;
if (propertyName == "title")
MessageBox.Show(parsedProperty.Value.ToString());
KeywordSuggestionTable.Rows.Add(parsedProperty.Value.ToString());
KeywordResultDataGrid.Refresh();
c# json winforms json.net
2
why don't you create a model for the json, and use Newtonsoft?
– Akbar Badhusha
Nov 16 '18 at 11:28
add a comment |
I am trying to parse a JSON string but I am getting an odd error:
Unable to cast object of type 'Newtonsoft.Json.Linq.JObject' to type 'Newtonsoft.Json.Linq.JProperty'
Would you check it and let me how I can get title
values from this JSON string!
[
"id":"14962106",
"title":"Why is Yahoo called Yahoo",
"link":"http://www.answers.com/Q/Why_is_Yahoo_called_Yahoo",
"is_answered":true
,
"id":"65001091",
"title":"Connecting yahoo IM to yahoo",
"link":"http://www.answers.com/Q/Connecting_yahoo_IM_to_yahoo",
"is_answered":true
,
"id":"45440021",
"title":"Why doesn't Yahoo recognize my Yahoo account",
"link":"http://www.answers.com/Q/Why_doesn%27t_Yahoo_recognize_my_Yahoo_account",
"is_answered":true
,
"id":"264383657",
"title":"How is Yahoo different from Yahoo Mail",
"link":"http://www.answers.com/Q/How_is_Yahoo_different_from_Yahoo_Mail",
"is_answered":true
,
"id":"11230021",
"title":"Does Yahoo block email",
"link":"http://www.answers.com/Q/Does_Yahoo_block_email",
"is_answered":true
,
"id":"11230461",
"title":"Is yahoo answers gone",
"link":"http://www.answers.com/Q/Is_yahoo_answers_gone",
"is_answered":true
,
"id":"12097857",
"title":"What is Yahoo BrowserPlus",
"link":"http://www.answers.com/Q/What_is_Yahoo_BrowserPlus",
"is_answered":true
,
"id":"100301924",
"title":"Is yahoo answers useful",
"link":"http://www.answers.com/Q/Is_yahoo_answers_useful",
"is_answered":true
,
"id":"107057666",
"title":"Are yahoo emails free",
"link":"http://www.answers.com/Q/Are_yahoo_emails_free",
"is_answered":true
,
"id":"107858033",
"title":"Is yahoo games free",
"link":"http://www.answers.com/Q/Is_yahoo_games_free",
"is_answered":true
]
JArray theamackersSuggesionResult = JArray.Parse(json);
foreach (JObject parsedObject in theamackersSuggesionResult.Children<JObject>())
foreach (JProperty parsedProperty in theamackersSuggesionResult)
string propertyName = parsedProperty.Name;
if (propertyName == "title")
MessageBox.Show(parsedProperty.Value.ToString());
KeywordSuggestionTable.Rows.Add(parsedProperty.Value.ToString());
KeywordResultDataGrid.Refresh();
c# json winforms json.net
I am trying to parse a JSON string but I am getting an odd error:
Unable to cast object of type 'Newtonsoft.Json.Linq.JObject' to type 'Newtonsoft.Json.Linq.JProperty'
Would you check it and let me how I can get title
values from this JSON string!
[
"id":"14962106",
"title":"Why is Yahoo called Yahoo",
"link":"http://www.answers.com/Q/Why_is_Yahoo_called_Yahoo",
"is_answered":true
,
"id":"65001091",
"title":"Connecting yahoo IM to yahoo",
"link":"http://www.answers.com/Q/Connecting_yahoo_IM_to_yahoo",
"is_answered":true
,
"id":"45440021",
"title":"Why doesn't Yahoo recognize my Yahoo account",
"link":"http://www.answers.com/Q/Why_doesn%27t_Yahoo_recognize_my_Yahoo_account",
"is_answered":true
,
"id":"264383657",
"title":"How is Yahoo different from Yahoo Mail",
"link":"http://www.answers.com/Q/How_is_Yahoo_different_from_Yahoo_Mail",
"is_answered":true
,
"id":"11230021",
"title":"Does Yahoo block email",
"link":"http://www.answers.com/Q/Does_Yahoo_block_email",
"is_answered":true
,
"id":"11230461",
"title":"Is yahoo answers gone",
"link":"http://www.answers.com/Q/Is_yahoo_answers_gone",
"is_answered":true
,
"id":"12097857",
"title":"What is Yahoo BrowserPlus",
"link":"http://www.answers.com/Q/What_is_Yahoo_BrowserPlus",
"is_answered":true
,
"id":"100301924",
"title":"Is yahoo answers useful",
"link":"http://www.answers.com/Q/Is_yahoo_answers_useful",
"is_answered":true
,
"id":"107057666",
"title":"Are yahoo emails free",
"link":"http://www.answers.com/Q/Are_yahoo_emails_free",
"is_answered":true
,
"id":"107858033",
"title":"Is yahoo games free",
"link":"http://www.answers.com/Q/Is_yahoo_games_free",
"is_answered":true
]
JArray theamackersSuggesionResult = JArray.Parse(json);
foreach (JObject parsedObject in theamackersSuggesionResult.Children<JObject>())
foreach (JProperty parsedProperty in theamackersSuggesionResult)
string propertyName = parsedProperty.Name;
if (propertyName == "title")
MessageBox.Show(parsedProperty.Value.ToString());
KeywordSuggestionTable.Rows.Add(parsedProperty.Value.ToString());
KeywordResultDataGrid.Refresh();
c# json winforms json.net
c# json winforms json.net
edited Nov 16 '18 at 11:51
Andrew Morton
16k63553
16k63553
asked Nov 16 '18 at 11:25
J. MarkJ. Mark
174
174
2
why don't you create a model for the json, and use Newtonsoft?
– Akbar Badhusha
Nov 16 '18 at 11:28
add a comment |
2
why don't you create a model for the json, and use Newtonsoft?
– Akbar Badhusha
Nov 16 '18 at 11:28
2
2
why don't you create a model for the json, and use Newtonsoft?
– Akbar Badhusha
Nov 16 '18 at 11:28
why don't you create a model for the json, and use Newtonsoft?
– Akbar Badhusha
Nov 16 '18 at 11:28
add a comment |
3 Answers
3
active
oldest
votes
Try creating a model,
public class Example
[JsonProperty("id")]
public string id get; set;
[JsonProperty("title")]
public string title get; set;
[JsonProperty("link")]
public string link get; set;
[JsonProperty("is_answered")]
public bool is_answered get; set;
and use Newtonsoft to get the models from the json
var responseModels = JsonConvert.DeserializeObject<List<Example>>(json);
Then you can loop the responseModels
to get what you want.
1
Perfect ! thanks
– J. Mark
Nov 16 '18 at 11:42
add a comment |
Also you can use this site -> http://json2csharp.com/
If you want to get model in C# of JSON data this site will be useful.
add a comment |
The error is due to this line:
foreach (JProperty parsedProperty in theamackersSuggesionResult)
It should be:
foreach (JProperty parsedProperty in parsedObject.Properties())
Fiddle: https://dotnetfiddle.net/w9dC3n
add a comment |
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%2f53336914%2fparsing-json-string-c-sharp%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
3 Answers
3
active
oldest
votes
3 Answers
3
active
oldest
votes
active
oldest
votes
active
oldest
votes
Try creating a model,
public class Example
[JsonProperty("id")]
public string id get; set;
[JsonProperty("title")]
public string title get; set;
[JsonProperty("link")]
public string link get; set;
[JsonProperty("is_answered")]
public bool is_answered get; set;
and use Newtonsoft to get the models from the json
var responseModels = JsonConvert.DeserializeObject<List<Example>>(json);
Then you can loop the responseModels
to get what you want.
1
Perfect ! thanks
– J. Mark
Nov 16 '18 at 11:42
add a comment |
Try creating a model,
public class Example
[JsonProperty("id")]
public string id get; set;
[JsonProperty("title")]
public string title get; set;
[JsonProperty("link")]
public string link get; set;
[JsonProperty("is_answered")]
public bool is_answered get; set;
and use Newtonsoft to get the models from the json
var responseModels = JsonConvert.DeserializeObject<List<Example>>(json);
Then you can loop the responseModels
to get what you want.
1
Perfect ! thanks
– J. Mark
Nov 16 '18 at 11:42
add a comment |
Try creating a model,
public class Example
[JsonProperty("id")]
public string id get; set;
[JsonProperty("title")]
public string title get; set;
[JsonProperty("link")]
public string link get; set;
[JsonProperty("is_answered")]
public bool is_answered get; set;
and use Newtonsoft to get the models from the json
var responseModels = JsonConvert.DeserializeObject<List<Example>>(json);
Then you can loop the responseModels
to get what you want.
Try creating a model,
public class Example
[JsonProperty("id")]
public string id get; set;
[JsonProperty("title")]
public string title get; set;
[JsonProperty("link")]
public string link get; set;
[JsonProperty("is_answered")]
public bool is_answered get; set;
and use Newtonsoft to get the models from the json
var responseModels = JsonConvert.DeserializeObject<List<Example>>(json);
Then you can loop the responseModels
to get what you want.
answered Nov 16 '18 at 11:32
Akbar BadhushaAkbar Badhusha
842918
842918
1
Perfect ! thanks
– J. Mark
Nov 16 '18 at 11:42
add a comment |
1
Perfect ! thanks
– J. Mark
Nov 16 '18 at 11:42
1
1
Perfect ! thanks
– J. Mark
Nov 16 '18 at 11:42
Perfect ! thanks
– J. Mark
Nov 16 '18 at 11:42
add a comment |
Also you can use this site -> http://json2csharp.com/
If you want to get model in C# of JSON data this site will be useful.
add a comment |
Also you can use this site -> http://json2csharp.com/
If you want to get model in C# of JSON data this site will be useful.
add a comment |
Also you can use this site -> http://json2csharp.com/
If you want to get model in C# of JSON data this site will be useful.
Also you can use this site -> http://json2csharp.com/
If you want to get model in C# of JSON data this site will be useful.
answered Nov 16 '18 at 12:11
MateuszMateusz
76210
76210
add a comment |
add a comment |
The error is due to this line:
foreach (JProperty parsedProperty in theamackersSuggesionResult)
It should be:
foreach (JProperty parsedProperty in parsedObject.Properties())
Fiddle: https://dotnetfiddle.net/w9dC3n
add a comment |
The error is due to this line:
foreach (JProperty parsedProperty in theamackersSuggesionResult)
It should be:
foreach (JProperty parsedProperty in parsedObject.Properties())
Fiddle: https://dotnetfiddle.net/w9dC3n
add a comment |
The error is due to this line:
foreach (JProperty parsedProperty in theamackersSuggesionResult)
It should be:
foreach (JProperty parsedProperty in parsedObject.Properties())
Fiddle: https://dotnetfiddle.net/w9dC3n
The error is due to this line:
foreach (JProperty parsedProperty in theamackersSuggesionResult)
It should be:
foreach (JProperty parsedProperty in parsedObject.Properties())
Fiddle: https://dotnetfiddle.net/w9dC3n
answered Nov 16 '18 at 18:31
Brian RogersBrian Rogers
78.5k18197211
78.5k18197211
add a comment |
add a comment |
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%2f53336914%2fparsing-json-string-c-sharp%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
2
why don't you create a model for the json, and use Newtonsoft?
– Akbar Badhusha
Nov 16 '18 at 11:28