博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
(菜鸟要飞系列)四,基于Asp.Net MVC5的后台管理系统(zTree绑定Json数据生成树)...
阅读量:4701 次
发布时间:2019-06-09

本文共 2800 字,大约阅读时间需要 9 分钟。

上一次老师让我们用递归将中国城市镇县四级联动 显示在树上,那个时候就知道可以显示在zTree上,可是苦于对Json的不了解,对zTree的Api的不了解,一直没有做出来,只好将递归算法显示在了窗体上,见, 前几天老师终于将他以前做的zTree的例子给我研究,终于知道了怎么写了(哭瞎,好没有成就感),感觉网上这部分资源好少,有也是关于SqlServer用EntityFramework中数据上下文写的,由于老师不让用EntityFramework框架,(总是说Oracle的EntityFramework框架太差劲,总有一天我要看看到底是不是这样),才让我花了好长时间都无结果,一看源码原来如此简单粗暴。

首先献上 zTree的html代码

1 @{ 2     Layout = null; 3 } 4  5 ZTREE DEMO - Custom Icon  6 
7
8
9 10 11 12 49 50
51
    52

    这里要去zTree的官网下载js,css,等文件

    然后将数据库中的数据转换为Json数据,這里先上数据库中的sql

    然后再是转化代码

    1  public JsonResult GetTreeView() 2         { 3             List
    > jsonlist = new List
    >(); 4 List
    treeList= new List
    (); 5 6 OracleHelper ora = new OracleHelper(); 7 string sql = "select * from treegeneration"; 8 DataTable dt = ora.Connect(sql); 9 for (int i = 0; i < dt.Rows.Count; i++)10 {11 TreeModel tree = new TreeModel();12 tree.TreeId = Convert.ToInt32(dt.Rows[i][0]);13 tree.TreeNodeCode = dt.Rows[i][1].ToString();14 tree.ParentTd = dt.Rows[i][2].ToString();15 tree.NodeName = dt.Rows[i][3].ToString();16 tree.NodeLevel =Convert.ToInt32(dt.Rows[i][4].ToString());17 18 treeList.Add(tree);19 }20 21 foreach (var model in treeList)22 {23 Dictionary
    jsonobj = new Dictionary
    ();24 jsonobj.Add("id", model.TreeNodeCode);25 jsonobj.Add("pId", model.ParentTd);26 jsonobj.Add("name", model.NodeName);27 //jsonobj.Add("icon", "");28 jsonlist.Add(jsonobj);29 }30 return Json(jsonlist, JsonRequestBehavior.AllowGet);31 }

    因为我自己Oracle数据库中的建表sql,和数据sql找不到了,所以发了个上次做的那个Mysql数据库的城镇级联数据表,这里你将上述代码稍加修改即可,这里不再赘述。

    注意这里  jquery.ztree.excheck-3.5.js  ,jquery.ztree.core-3.5.js 是关键,要不然待会你生成treeView的复选框就看不见了。效果图如下

    这里顺便附上SqlServer中的EntittyFramework的Context上下文的方法将数据库中数据转化为Json的样式

    1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Web; 5 using System.Web.Mvc; 6 using MvcApplication4.Models; 7  8 namespace MvcApplication4.Controllers 9 {10     public class HomeController : Controller11     {12         //13         // GET: /Home/14         private Context db = new Context();15         public ActionResult Index()16         {17             return View();18         }19 20         public ActionResult getmenu()21         { 22             var list = (from a in db.Menutree23                         select new24                         {25                             id = a.Zid,26                             pId = a.Pid,27                             name = a.Name,28                             LinkUrl = a.LinkUrl29                         }).ToList();30             return Json(list, JsonRequestBehavior.AllowGet);31         }32 33     }34 }
    View Code

    研究起来,相信亲们都可以看懂,不懂得进群交流,有问必答,群号

     

    转载于:https://www.cnblogs.com/jnzdn/p/5425796.html

    你可能感兴趣的文章
    移动端经常遇到的小bug
    查看>>
    网络&热恋NSURLConnection代理及GET¥POST请求
    查看>>
    SshTerminal
    查看>>
    MySQL常用函数
    查看>>
    Ubuntu安装搜狗拼音教程
    查看>>
    Happy Number
    查看>>
    Sqlserver 系统视图简单说明
    查看>>
    【摘录】PHP异步调用实现方式
    查看>>
    php缓存机制
    查看>>
    bzoj2049 线段树 + 可撤销并查集
    查看>>
    sql语句---存在即更新,否则insert
    查看>>
    cookie机制、session机制
    查看>>
    BZOJ 3787: Gty的文艺妹子序列
    查看>>
    Comet OJ - Contest #5 简要题解
    查看>>
    CF1093G Multidimensional Queries
    查看>>
    移动端提升页面速度与网站性能
    查看>>
    Dfs【p4906】小奔关闹钟
    查看>>
    【JMeter4.0】之遇到的问题总结(持续更新)
    查看>>
    计算机编码总结
    查看>>
    codevs 2964公共素数因数
    查看>>