博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MVC 统计之 自定义 列表
阅读量:6928 次
发布时间:2019-06-27

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

实际上,我遇到一个统计的需求. 项目个数不确定(可维护),人员个数不确定(可维护)

行列都不确定的情况下.要统计每个人每天项目所使用时间的数据..最后使用动态table 完成功能.

效果:

 

后台:

public ActionResult Search(string CreatetimeS, string CreatetimeE, string Project, Guid? Createby)        {            List
EM_Employees = db.EM_Employee.ToList(); ViewBag.Createby = new SelectList(EM_Employees, "EmID", "EMRealName"); List
SYS_DD_Projects = db.SYS_DD.Where(dd => dd.DDType == "Project").OrderBy(dd => dd.DDCode).ToList(); ViewBag.Project = new SelectList(SYS_DD_Projects, "DDCode", "DDName"); if (Createby != null) { EM_Employees = EM_Employees.Where(em => em.EmID == Createby).ToList(); } if (!string.IsNullOrEmpty(Project)) { SYS_DD_Projects = SYS_DD_Projects.Where(s => s.DDCode == Project).ToList(); } DataTable dt = DataTableCalculate(Convert.ToDateTime(CreatetimeS), Convert.ToDateTime(CreatetimeE), EM_Employees, SYS_DD_Projects); //return Json("json"); return View("Index", dt); } private DataTable DataTableCalculate(DateTime startTime, DateTime endTime, List
EM_Employees, List
SYS_DD_Projects) { DataTable dt = new DataTable(); dt.Columns.Add("Employees"); foreach (var Project in SYS_DD_Projects) { dt.Columns.Add(Project.DDName); } foreach (var Employee in EM_Employees) { var row = dt.NewRow(); row["Employees"] = Employee.EMRealName; foreach (var Project in SYS_DD_Projects) { row[Project.DDName] = db.Hours.Where(h => h.Createtime >= startTime && h.Createtime <= endTime && h.Createby == Employee.EmID && h.Project == Project.DDCode) .Sum(h => (double?)h.SpendHours); } dt.Rows.Add(row); } return dt; }

 

前台:

@model System.Data.DataTable@if (Model != null){    
@foreach (System.Data.DataColumn column in Model.Columns) {
}
@foreach (System.Data.DataRow row in Model.Rows) {
@foreach (System.Data.DataColumn column in Model.Columns) {
}
}
@column.ColumnName
@row[column.ColumnName]
}

 

转载于:https://www.cnblogs.com/cxd1008/p/8085419.html

你可能感兴趣的文章
分享:C语言中Const指针变量(常指针)
查看>>
为ios 应用程序添加图标和添加名字
查看>>
学习C语言一些的好的书和网站
查看>>
[php] 如何将 simplexml_load_string 转换成数组array
查看>>
Ecshop探究之index.php
查看>>
WCF实例上下文以及会话学习
查看>>
Android系统中的广播(Broadcast)机制简要介绍和学习计划
查看>>
Properties 配置文件的读取
查看>>
[后缀数组、不重复子串]SPOJ694、spoj705--Distinct Substrings
查看>>
Mac OS X 10.8.3搭建Android工程源码的编译环境(解决找不到GCC、GIT、PYTHON的问题)...
查看>>
ruby/python/java全覆盖的Selenium-Webdriver系列教程(2)————浏览器的简单操作
查看>>
logcat
查看>>
实验五 含有控制信号的计数器VHDL设计
查看>>
ExtJs 通过分析源代码解决动态加载Controller的问题
查看>>
字符串相似度算法 递归与动态规划求解分析
查看>>
同步博客到CSDN
查看>>
VMware vSphere 服务器虚拟化之二十八 桌面虚拟化之安装View传输服务器
查看>>
用友CDM系统,将货位间商品移库单(一步)修改为内调出入库单(一步)方法使用...
查看>>
(Problem 14)Longest Collatz sequence
查看>>
Oracle中 Package与Package body的介绍
查看>>