利用Newtonsoft.Json序列化成多层json

sk1078 2014-05-04 03:51:35
1.数据库中有以下数据

2.怎么用Newtonsoft.Json将查询结果序列化成以下形式
[
{
"Menu_id":1001,
"Menu_value":"学校管理类",
"Menu_link":"",
"Menu_target":"",
"Menu_pathid":10,
"a":{
"url":"/XXGLL/Index",
"state":"closed"
}
},
{
"Menu_id":1002,
"Menu_value":"学生管理类",
"Menu_link":"",
"Menu_target":"",
"Menu_pathid":10,
"a":{
"url":"/XSGLL/Index",
"state":"closed"
}
},
{
"Menu_id":1003,
"Menu_value":"教学管理类",
"Menu_link":"",
"Menu_target":"",
"Menu_pathid":10,
"a":{
"url":"/JXGLL/Index",
"state":"closed"
}
},
{
"Menu_id":1004,
"Menu_value":"教职工管理类",
"Menu_link":"",
"Menu_target":"",
"Menu_pathid":10,
"a":{
"url":"/JZGGLL/Index",
"state":"closed"
}
}
]
...全文
698 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
Verdantk 2014-05-15
  • 打赏
  • 举报
回复
主要代码 在model层
    public class MenuNav
    {
        public int Menu_id { get; set; }
        public string Menu_value { get; set; }
        public string Menu_link { get; set; }
        public string Menu_target { get; set; }
        public int Menu_pathid { get; set; }
        public att a { get; set; }
    }
    public class att
    {
        public string url { get; set; }
    }
在数据访问层
 public IEnumerable<Model.MenuNav> GetMenuNav()
        {
            List<Model.MenuNav> list = new List<Model.MenuNav>();
            using (DataSet ds =DBUtility.SqlHelper.ExecuteDataset(数据库链接, CommandType执行类型, sql语句))
            {
                foreach (DataRow dr in ds.Tables[0].Rows)
                {
                    Model.MenuNav menunav = new Model.MenuNav();
                    Model.att a = new Model.att();
                    menunav.Menu_id = (int)dr["Menu_id"];
                    menunav.Menu_link = dr["Menu_link"].ToString();
                    menunav.Menu_pathid = (int)dr["Menu_pathid"];
                    menunav.Menu_target = dr["Menu_target"].ToString();
                    menunav.Menu_value = dr["Menu_value"].ToString();
                    a.url = dr["url"].ToString();
                    menunav.attributes = a;                   
                    list.Add(menunav);
                }
                return list;
            }
        }
表现层
       BLL.MenuNav bll = new BLL.MenuNav();
            IEnumerable<Model.MenuNav> menunavs = bll.GetMenuNav(); 
            string json = JsonConvert.SerializeObject(menunavs);
            return Content(json)
Ny-6000 2014-05-04
  • 打赏
  • 举报
回复
实体对象,到序列化的转换.

110,571

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧