EasyUI Tree后台数据初始化(LINQ操作)

控制器:

 1  /// <summary>
 2         /// 树初始化
 3         /// </summary>
 4         /// <returns></returns>
 5         [HttpPost]
 6         public ContentResult InitTree()
 7         {
 8             List<TestModel> items = bll.GetTreeFormList();
 9             Action<TestModel> SetChildren = null;
10             //封装一个方法(递归)不断读取树的分支
11             SetChildren = Parent =>
12             {
13                 Parent.Children = items.Where(childItem => childItem.ParentGuid == Parent.Guid).ToList();
14                 Parent.Children.ForEach(SetChildren);
15             };
16             //初始化树列表
17             List<TestModel> treeItems = items.Where(rootItem => rootItem.ParentGuid == "").ToList();
18             treeItems.ForEach(SetChildren);
19
20             string strJson = JsonConvert.SerializeObject(treeItems,
21                 Formatting.Indented,
22                 new JsonSerializerSettings()
23                 {
24                     NullValueHandling = NullValueHandling.Ignore,
25                     ReferenceLoopHandling = ReferenceLoopHandling.Ignore,
26                     Converters = new List<JsonConverter> { new IsoDateTimeConverter { DateTimeFormat = "yyyy-MM-dd HH:mm:ss" } }
27                 }).Replace("Children", "children");
28
29             return Content(strJson);
30         }

实体:

1     public class TestModel
2     {
3         public string Guid { get; set; }
4         public string Name { get; set; }
5         public string Price { get; set; }
6         public string ParentGuid { get; set; }
7
8         public List<TestModel> Children { get; set; }
9     }

时间: 2024-11-15 22:16:00

EasyUI Tree后台数据初始化(LINQ操作)的相关文章

8天掌握EF的Code First开发系列之3 管理数据库创建,填充种子数据以及LINQ操作详解

本篇目录 管理数据库创建 管理数据库连接 管理数据库初始化 填充种子数据 LINQ to Entities详解 什么是LINQ to Entities 使用LINQ to Entities操作实体 LINQ操作 懒加载和预加载 插入数据 更新数据 删除数据 本章小结 本人的实验环境是VS 2013 Update 5,windows 10,MSSQL Server 2008. 上一篇<Code First开发系列之领域建模和管理实体关系>,我们主要介绍了EF中“约定大于配置”的概念,如何创建数据

Jquery EasyUI datagrid后台数据表格生成及分页详解

由于项目原因,网站后台需要对用户信息进行各种操作,有时还需要进行批量操作,所以首先需要将用户信息展示出来,查了不少资料.发现Jquery EasyUI确实是一个不错的选择,功能强大,文档也比较全面,而且容易上手.今天就把自己在项目中用到的功能做了一个总结.生成数据表格如下所示: 接下来上代码 界面html及js代码 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="utf-8"/>

easyui tree后台传json处理问题

一.tree json格式 [ { "id": 1, "text": "权限管理", "iconCls": "icon-feed", "checked": false, "attributes": { "url": "#123" }, "children": [ { "id": 2, &q

mysql之数据初始化update操作

1.单表的:update user set name = (select name from user where id in (select id from user where name='小苏')): update goods set name = REPLACE(name ,' ','') ; //去空格                  update goods set name = replace(name,'香蕉','苹果') ; //香蕉换苹果                 u

EasyUI Tree onLoadSuccess Data数据不正确

EasyUI Tree OnLoadSuccess Data数据  1.4.1 Data数据中的checked 都为false 但是实际页面中显示确实正确的结果 然后本人开始查找原因 最后折腾半天找到原因: 对象没有对data中的数据完成初始化. 所以自己初始化. 在1491行处加入对checked的赋值!这样 onLoadSuccess事件的Data的check就是正确的值了!

asp.net:easyui tree控件加载url数据

easyui tree控件加载url数据 建表 CREATE TABLE [dbo].[OrganizationStructure]( [Id] [int] IDENTITY(1,1) NOT NULL, [OwnerId] [int] NOT NULL, [Name] [nvarchar](100) NOT NULL, [Type] [int] NULL, CONSTRAINT [PK_OrganizationStructure] PRIMARY KEY CLUSTERED ( [Name]

【开源】OSharp框架解说系列(2.1):EasyUI的后台界面搭建及极致重构

〇.前言 要了解一个东西长什么样,至少得让我们能看到,才能提出针对性的见解.所以,为了言之有物,而不是凭空漫谈,我们先从UI说起,后台管理页面的UI我们将使用应用比较普遍的easyui框架. 以前在用easyui的时候,每个页面都得从0做起,或者不厌其烦地由以前的页面通过“复制-粘贴”的方式来修改,久页久之,就会造成页面庞大且难以维护.其实,前端的html,javascript代码与后端的代码是一样的,通过一定的组织,把重复的代码抽离出来,同样也通过达到很好的复用率.而MVC的天生的Layout

利用Aspose.Cells完成easyUI中DataGrid数据的Excel导出功能

我准备在项目中实现该功能之前,google发现大部分代码都是利用一般处理程序 HttpHandler实现的服务器端数据的Excel导出,但是这样存在的问题是ashx读取的数据一般都是数据库中视图的数据,难免会含有方便操作的 主键ID这列的记录.现在项目需要在easyUI的DataGrid中显示的数据能全部导出Excel,包括DataGrid中的中文标题,其他的统统不 要. 完成该功能所需的工具和环境:Newtonsoft.Json序列化和反序列化类库.easyUI前端UI框架.HttpHandl

Jquery easyui tree的使用

这个ui用的一切都是json数据.树也是如此! 后台需要返回与格式匹配的json数据才能正确加载树. 页面定义一个ui: <ul id="messageInfoAddTree" class="easyui-tree" checkbox="true" data-options="lines:true" style="height:94%"></ul> JS访问后台: //人员树 $('