Click here to Skip to main content
15,891,607 members
Please Sign up or sign in to vote.
1.00/5 (1 vote)
See more:
Hi, I have an action which returns json value which is following :

JavaScript
{
    "Formatted Name": "Samsung",
    "Style": "stuffitblue",
    "Supports": [
      {
        "Name": "Follow",
        "URL": "IOGLO000030000900001000050000M000160000100005.Link?aLink_GUID=29b1468f-c8c3-db23-3097-c85369f818cd&aOutputFormat=JSON"
      }
    ],
    "Type": "Button"
  },


I am getting the value of formatted name and style which I am showing in label but I am getting a problem to show the value of supports.So I need a code through which I can print the value of name and URL in label.

I have write the following code to print formatted name.

void wc_DownloadStringCompleted1(object sender, DownloadStringCompletedEventArgs e)
{
try
{
var serializer1 = new JavaScriptSerializer();
serializer1.RegisterConverters(new[] { new DynamicJsonConverter() });

dynamic obj = serializer1.Deserialize(e.Result, typeof(object));

dynamic obj7 = obj[7];
dynamic fn7 = obj7["Formatted Name"];
lblitemname.Text = fn7;
}
catch (Exception ex)
{
}
}


Thanks,
Posted
Updated 28-Mar-14 0:15am
v3
Comments
CoderPanda 28-Mar-14 5:17am    
How are you getting the value of formatted name and style?
Priyanka Bhawsar 28-Mar-14 5:23am    
Through Dynameicjsonconverter but I am not getting the value of Name and URL.
CoderPanda 28-Mar-14 5:26am    
Code please.
Vedat Ozan Oner 28-Mar-14 5:24am    
if you send your code, we can talk about it.
Priyanka Bhawsar 28-Mar-14 5:45am    
void wc_DownloadStringCompleted1(object sender, DownloadStringCompletedEventArgs e)
{
try
{
var serializer1 = new JavaScriptSerializer();
serializer1.RegisterConverters(new[] { new DynamicJsonConverter() });

dynamic obj = serializer1.Deserialize(e.Result, typeof(object));

dynamic obj7 = obj[7];
dynamic fn7 = obj7["Formatted Name"];
lblitemname.Text = fn7;





}
catch (Exception ex)
{
}
}

Have you tried

C#
jsonTypeName.Supports[0].Name


and

C#
jsonTypeName.Supports[0].URL


Replace jsonTypeName with whatever name you have for your json type.

Also see this CP Article[^]
 
Share this answer
 
v2
Comments
Bernhard Hiller 28-Mar-14 5:40am    
I am not sure, but "Supports" looks like an array to me. Hence I'd prefer jsonTypeName.Supports[0].URL etc.
CoderPanda 28-Mar-14 5:42am    
True. I agree.
Priyanka Bhawsar 28-Mar-14 5:40am    
But jsonTypeName does not exist in c#.
CoderPanda 28-Mar-14 5:44am    
Replace the word "jsonTypeName" with whatever name you have for your json type after it is de-serialized. Please paste how you are accessing formatted name and style?
Priyanka Bhawsar 28-Mar-14 5:53am    
void wc_DownloadStringCompleted1(object sender, DownloadStringCompletedEventArgs e)
{
try
{
var serializer1 = new JavaScriptSerializer();
serializer1.RegisterConverters(new[] { new DynamicJsonConverter() });

dynamic obj = serializer1.Deserialize(e.Result, typeof(object));

dynamic obj7 = obj[7];
dynamic fn7 = obj7["Formatted Name"];
lblitemname.Text = fn7;
}
catch (Exception ex)
{
}
}
void wc_DownloadStringCompleted1(object sender, DownloadStringCompletedEventArgs e)
{
try
{
var serializer1 = new JavaScriptSerializer();
serializer1.RegisterConverters(new[] { new DynamicJsonConverter() });

dynamic obj = serializer1.Deserialize(e.Result, typeof(object));

dynamic obj7 = obj[7];
dynamic fn7 = obj7["Formatted Name"];
lblitemname.Text = fn7;


dynamic supportitem = obj7["Supports"][0];//to convert json array list
dynamic supportitemname = supportitem["Name"];
dynamic supportitemurl = supportitem["URL"];
lblfollowurl.Text = supportitemurl;
}
catch (Exception ex)
{
}
}
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900