Sangeeta
Sangeeta

Reputation: 164

Json Object Deserialization in c#

im tyring to deserialize my object coming from client side having following format:

{'goalplans':
   [{"goalPlan":0,"accountId":11,"objectiveId":17,"activity":35,"acctOwner":0,"planDay":"1/30/2013","spend_budget":12,"sortBy":0,"activityFlag":0},
    {"goalPlan":0,"accountId":11,"objectiveId":17,"activity":35,"acctOwner":0,"planDay":"1/30/2013","spend_budget":12,"sortBy":0,"activityFlag":0},
    {"goalPlan":0,"accountId":11,"objectiveId":17,"activity":35,"acctOwner":0,"planDay":"1/30/2013","spend_budget":12,"sortBy":0,"activityFlag":0},
    {"goalPlan":0,"accountId":11,"objectiveId":17,"activity":35,"acctOwner":0,"planDay":"1/30/2013","spend_budget":12,"sortBy":0,"activityFlag":0},
    {"goalPlan":0,"accountId":11,"objectiveId":17,"activity":35,"acctOwner":0,"planDay":"1/30/2013","spend_budget":12,"sortBy":0,"activityFlag":0},
    {"goalPlan":0,"accountId":11,"objectiveId":17,"activity":35,"acctOwner":0,"planDay":"1/30/2013","spend_budget":12,"sortBy":0,"activityFlag":0}
]}

thing is that im not able to deserialze it on my server side .

Please tell me how can i deserialize the Json object to a list object like List . i tried many ways but not working.

Upvotes: 2

Views: 463

Answers (3)

Sangeeta
Sangeeta

Reputation: 164

I solved the problem by myself. Simply adding [Serializable] to my class and changed method to take argument of class type ... e.g.

//My class
[Serializable]
public class GoalPlanList{}

//method
public static int GoalplanAddUPD(List<GoalPlanList> goalplans)
{
    foreach (GoalPlanList goals in goalplans)
    {}
}

Upvotes: 0

Sascha
Sascha

Reputation: 10347

One possible third party component is JSON.NET. Personally I have made very good experience with that library ( it is available using nuget for example )

Upvotes: 2

Arsen Mkrtchyan
Arsen Mkrtchyan

Reputation: 50712

serialize/deserialize objects to/from JSON exist Since .NET 3.5, try this

using System.Web.Script.Serialization;

var jss = new JavaScriptSerializer();
var dict = jss.Deserialize<dynamic>(jsonText);

See here for more details

Hope this helps

Upvotes: 4

Related Questions