永发信息网

NewtonSoft类库把对象转化成JSON数据后,日期到前台怎么变成了 这种格式呢 /Date(1295107200000+0800)/

答案:1  悬赏:0  手机版
解决时间 2021-03-05 13:40
  • 提问者网友:且恨且铭记
  • 2021-03-05 07:40
NewtonSoft类库把对象转化成JSON数据后,日期到前台怎么变成了 这种格式呢 /Date(1295107200000+0800)/
最佳答案
  • 五星知识达人网友:神鬼未生
  • 2021-03-05 08:32
据结构应该是对应的,这里的例子可能忽略了部分属性和数据类型,仅供参考:

//Json数据的对象结构
public class MyJson
{
public List beanList
}

//树形结构中的对象结构
public class MyBean
{
public string id
public string title
public string note
public MyImage image
public string maxid
public string fold
public string putright
public List children

public MyBean()
{
}
}

//对象里面Image的结构
public class MyImage
{
public string url
public string border
public string height
public string width
}

2.因为json是树形结构的数据,所以需要递归遍历去寻找对应ID的对象

//这个类负责按照ID寻找对象
public class MyHelper
{
//FindById函数的重载函数,用来第一次调用
public static MyBean FindById(string id, string jsonString)
{
return FindById(id, jsonString, null);
}
//FindById递归寻找函数
public static MyBean FindById(string id, string jsonString, List beanList)
{
if (beanList == null) {
//第一次调用的时候,寻找的列表是最高层的根底下的对象列表
//将json数据转换成C#对应类型(用了Newtonsoft.Json)
MyJson json = JavaScriptConvert.DeserializeObject(jsonString);
beanList = json.beanList;
}

//遍历对象列表,寻找对应ID的对象
MyBean returnBean = null;
foreach (MyBean bean in beanList) {
if (bean.id == id) {
//找到了
returnBean = bean;
} else {
//递归寻找:
//如果不是,就寻找此对象的children列表
returnBean = FindById(id, jsonString, bean.children);
}

//如果找到,就跳出寻找
if (returnBean != null) {
break;
}
}
return returnBean;
}
}

3.使用实例:

//假设json的字符串在变量jsonString中
MyBean bean = MyHelper.FindById("33", jsonString);
if (bean != null) {
//使用查找出来的bean
}

写在最后:
以上代码仅供参考,没有经过编译测试、有可能存在书写错误。但是逻辑清晰、没有任何冗余内容。请楼主阅读以后自己在理解的基础上进行修改、改进再使用。
另外楼主如果想给分就请直接给,请不要马马虎虎把大家的回答投票,比较反感,最后祝你早日搞定这个问题~~~
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯