dapper+linq+json+ztree構建樹

來源:互聯網
上載者:User

標籤:dapper   linq   json   ztree   

dapper擷取集合實體

/// <summary>        /// 擷取表tb_sys_zhuowei全部資料        /// </summary>        public IEnumerable<Model_tb_sys_zhuowei> SelectAll_tb_sys_zhuowei()        {            using (IDbConnection conn = OpenConnection())            {                const string query = @"select * from tb_sys_zhuowei order by addtime desc";                return conn.Query<Model_tb_sys_zhuowei>(query, null);            }        }

linq處理集合,並通過Newtonsoft處理成json

protected string GetTree()    {        MyProject.DataOrm dao = new MyProject.DataOrm();        IEnumerable<MyProject.Model_tb_sys_zhuowei> list = dao.SelectAll_tb_sys_zhuowei();        var q = from x in list                orderby x.louceng                group x by x.louceng into g //按樓層分組                select new                {                    name = g.Key.ToString() + "樓",                    open = true,                    children = from x2 in g                               orderby x2.quyu                               //where x2.louceng == g.Key                               group x2 by x2.quyu into k //按地區分組                               select new                               {                                   name = k.Key.Length == 2 ? "包間" : k.Key + "區",                                   click = "loadzw('" + g.Key.ToString() + "-" + k.Key + "')"                               }                    //select new                    //{                    //    name = x2.quyu.Length == 2 ? "包間" : x2.quyu + "區",                    //    click = "loadzw('" + g.Key.ToString() + "-" + x2.quyu + "-" + x2.number.ToString() + "')"                    //}                };        var templist = q.ToList();        return Newtonsoft.Json.JsonConvert.SerializeObject(templist, Newtonsoft.Json.Formatting.Indented);    }
[{    "name": "1樓",    "open": true,    "children": [{        "name": "A區",        "click": "loadzw('1-A')"    },    {        "name": "B區",        "click": "loadzw('1-B')"    },    {        "name": "包間",        "click": "loadzw('1-BJ')"    }]},{    "name": "2樓",    "open": true,    "children": [{        "name": "A區",        "click": "loadzw('2-A')"    }]}]

前端ztree構建樹

<script src="../../js/jquery-1.6.min.js" type="text/javascript"></script>    <script src="../../js/jquery.ztree.core-3.5.min.js" type="text/javascript"></script>    <script type="text/javascript"><!--        var setting = {};//        var zNodes = [//{ name: "1樓", open: true,//    children: [//{ name: "A區", click: "loadzw('1-A')" },//{ name: "B區", click: "loadzw('1-B')" },//{ name: "C區", click: "loadzw('1-C')" }//]//},//            { name: "2樓", open: true,//                children: [//{ name: "A區", click: "loadzw('2-A')" },//{ name: "B區", click: "loadzw('2-B')" },//{ name: "C區", click: "loadzw('2-C')" }//]//            },//            { name: "3樓", open: true,//                children: [//{ name: "A區", click: "loadzw('3-A')" },//{ name: "B區", click: "loadzw('3-B')" },//{ name: "C區", click: "loadzw('3-C')" }//]//            }//];        var zNodes = <%=GetTree() %>        $(document).ready(function () {            $.fn.zTree.init($("#treeDemo"), setting, zNodes);        });//-->        function loadzw(kk) {            alert(kk);        }</script>

效果



聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.