asp.net MVC项目开发之统计图echarts后台数据的处理(三)

前台显示的东西,有相应的文档很容易修改,后台传递数据方式才是我们最关心的

首先要记住,我们一步数据使用的是post,那么后台代码我们要给方法加上 [HttpPost]注解

不然异步没有效果

下面上代码,为了节省时间,字段变量的命名,我用的是英文1,2,3,不要见怪哦

 public ActionResult GetMarriageList(int areaId, int level)
        {
            List<VwAllPersonInfoModel> allPerList = new List<VwAllPersonInfoModel>();
            IVwAllPersonInfoService allPerService = LoadService<IVwAllPersonInfoService>();
            Dictionary<string, Object> json = new Dictionary<string, Object>();
            DdlDataSrc ddl = new DdlDataSrc();
            DataTable dt = new DataTable();
            Criteria c = new Criteria();
            StringBuilder sb = new StringBuilder();
            ddl.getAllChildAreaIds(sb, areaId);
            #region 根据区域把获取的数据放入json

            int one = 0;
            int two = 0;
            int three = 0;
            int four = 0;
            if (level == 3)
            {
                c.AddWhere("AreaId", areaId);
                allPerList = allPerService.GetAllVwAllPersonInfoModel(c);
            }
            else if (level != 0)
            {
                string str = sb.Remove(sb.Length - 1, 1).ToString();
                dt = allPerService.GetAllPersonInfoCharts(str, 0, 0);
                allPerList = (List<VwAllPersonInfoModel>)ModelConvertHelper<VwAllPersonInfoModel>.ConvertToModel(dt);
            }
            if (allPerList.Count != 0)
            {
                for (int i = 0; i < allPerList.Count; i++)
                {
                    switch (allPerList[i].MaticalStatus)//婚姻状况
                    {
                        case 1:
                            ++one;
                            break;
                        case 2:
                            ++two;
                            break;
                        case 3:
                            ++three;
                            break;
                        case 4:
                            ++four;
                            break;
                    }
                }
                json.Add("未婚", one);
                json.Add("已婚有配偶", two);
                json.Add("离婚", three);
                json.Add("丧偶", four);
            }
            else
            {
                json.Add("暂无数据", 1);
            }
            #endregion

            return Json(json);
        }

这里使用 Dictionary<string, Object> json = new Dictionary<string, Object>();Dictionary的结构是这样的:Dictionary<[key], [value]>提供快速的键值查找的方式,把输入异步给统计图。

如果数据是单选的,可以使用switch进行判断,如果是多选的话,请使用if进行判断。分享出来希望能帮到大家

时间: 2024-08-07 18:24:17

asp.net MVC项目开发之统计图echarts后台数据的处理(三)的相关文章

asp.net MVC项目开发之统计图echarts饼形图(二)

上面介绍了柱状图,只有js代码后台的传递等我们介绍完饼形图的使用过程在做介绍 有了柱状图的介绍,在使用饼形图,其实很容易了,上代码 //打开网页加载 $(function () { // 路径配置 require.config({ paths: { echarts: 'http://echarts.baidu.com/build/dist' } }); areaQuery(); }) 因为不是专业的前端,前端代码写的不是很好,请别见怪,查询异步代码 //查询操作 function areaQue

asp.net MVC项目开发之统计图的使用(前言)

接触这个项目,是项目组长已经完成了多数需求,并且有2个项目需要完工的情况下,让我加入,给了我2个表格,让我去设计出统计图. 第一次做统计图,可以说没有任何经验,不知道该如何下手,表格的数据量不少,重要的是分支很多,就准备先找下统计图插件,看下那个比较好用,并且做下对比. 网上说法很多,比较好用的就2个, 1)echarts统计图插件(百度出品) 优点:百度使用canvas可能考虑更多的是浏览器兼容性,只能通过api增加事件,更不容易出问题 2) highcharts统计图(国外) 优点:图表复杂

时间:第1周9月16日;主题:初识ASP.NET MVC项目开发(一)

Part I:回顾及提问 ==================== 1. ASP.NET MVC是微软公司.NET平台上的一个______________,它为开发者提供了一种构建结构良好的Web应用程序的方式. 2. 自2007年首次公布预览以来,作为_____________的替代品,ASP.NET MVC的普及度已明显提高,现在很多大型Web应用程序都是使用这一技术构建的. 3. 为了简化软件开发的复杂度,以一种概念简单却又权责分明的架构来贯穿整个软件开发流程,将业务逻辑层与_______

ASP.NET MVC项目实现BasePage基类用作ASPX.CS网页继承

在ASP.NET MVC项目开发,还是需要创建一些Web Page来实现一些功能,如呈现报表等... 但是一旦项目的.ASPX网页太多了,其中的程序代码也会有代码冗余,出现这些情况,我们得需要对这些代码进行重构. 比如,项目中需要呈现很多报表,就会创建许多.aspx网页: 所有呈现报表的.aspx.cx代码都一样,唯独高亮的部分有区别. 按照面向对象编程,可以把这些代码提升去父类中去. 把不相同的地方,改为方法的参数即可. 接下来,我们需要对.aspx.cs实现对基类的继承> 但不管怎样,当我们

ASP.NET MVC模块化开发——动态挂载外部项目

原文:ASP.NET MVC模块化开发--动态挂载外部项目 最近在开发一个MVC框架,开发过程中考虑到以后开发依托于框架的项目,为了框架的维护更新升级,代码肯定要和具体的业务工程分割开来,所以需要解决业务工程挂载在框架工程的问题,MVC与传统的ASP.NET不同,WebForm项目只需要挂在虚拟目录拷贝dll就可以访问,但是MVC不可能去引用工程项目的dll重新编译,从而产生了开发一个动态挂在MVC项目功能的想法,MVC项目挂载主要有几个问题,接下来进行详细的分析与完成解决方案 一般动态加载dl

ASP.NET MVC——CodeFirst开发模式

Entity Framework框架提供了几种开发模式,比如Database First,Model First,Code First.Database First是最老也是应用得最广泛的一种设计方式.Database First这种方式的设计高度依赖于数据库中表的结构,根据表及表间的关系来创建模型.如果后期需求有所变更或者功能有很大变化的话,需要涉及到更改数据库所付出的代价将会很大,因为之前编写好的代码将不再适用于新的表,我们必需重构以更改代码中的逻辑以适应更改之后的表.Model First

像asp.net Mvc一样开发nodejs+express Mvc站点

像asp.net Mvc一样开发nodejs+express Mvc站点 首先,我是个c#码农.从事Mvc开发已然4个年头了,这两年前端MVC的兴起,我也跟风学了一些,对前端的框架也了解一些,angularJs,requirejs,commonJs,backbone等等前端的mvc框架也异常流行,与这些前端的流行框架一同火起来的还有node.js. Node.js将javascript作为服务器端的代码开发,由其语言特性(单线程,异步)等以高效率高吞吐著称.这里不会去讨论node.js的好的坏的

ASP.NET MVC项目中App_Code目录在程序应用

学习ASP.NET MVC,如果你是开发ASP.NET MVC项目的,也许你去为项目添加前ASP.NET项目的APP_Code目录,在这里创建与添加的Class类,也许你无法在MVC项目所引用. 那这样说,是不是一没有作用了呢?非也. 从下面一步一步来学习. 创建一个model,名称:Machine using System; using System.Collections.Generic; using System.Linq; using System.Web; namespace Insu

AngularJS2 + ASP.NET MVC项目

环境:VS2015, NodeJS:v 6.5, npm: v3.10, AngularJs 2 通过将ASP.NET MVC项目与Angualr 2官网上的quick start整合的过程中遇到些问题. 通过下面的若干配置最终向项目build成功.