c#中的Json对象反序列化
本文关键字:反序列化 对象 Json 中的 | 更新日期: 2023-09-27 18:18:01
我正在尝试对来自客户端的对象进行反序列化,格式如下:
{'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}
]}
问题是我无法在我的服务器端对它进行反序列化。
请告诉我如何将Json对象反序列化为列表对象列表。我试了很多方法,但都不起作用。
在JSON中序列化/反序列化对象
using System.Web.Script.Serialization;
var jss = new JavaScriptSerializer();
var dict = jss.Deserialize<dynamic>(jsonText);
查看更多细节
希望能有所帮助
一个可能的第三方组件是JSON.NET。就我个人而言,我对这个库有很好的体验(例如,它可以使用nuget)
我自己解决了这个问题。简单地将[Serializable]
添加到我的类中并且改变了方法来接受类类型的参数…例如
//My class
[Serializable]
public class GoalPlanList{}
//method
public static int GoalplanAddUPD(List<GoalPlanList> goalplans)
{
foreach (GoalPlanList goals in goalplans)
{}
}