首页 新闻 会员 周边 捐助

ef 小问题,一句话遍历修改字段

0
[待解决问题]
IEnumerable<Credit.Models.c_creditLevelDetail> cCLD = acld.Gets(pageIndex, Credit.ActionData.PagingInfo.PageSize, out recordCount);

return Json(new { Data = cCLD, Total = recordCount });

请问如何用最方便的修改cCLD集合中的一个值,比如我的集合里面有一个DateTime的值,我想在里面去.ToString("yyyy-MM-dd HH:mm:ss")一哈,这样我的前台js就可以直接使用了,也有其他需求,有没有linq的语法一句遍历集合,修改值。
顺便请教:这种asp.net 返回到页面的时间类型:

  • :/Date(1436338459317)/,这个样子的怎么用js来处理啊
留下的枇杷的主页 留下的枇杷 | 初学一级 | 园豆:6
提问于:2015-07-27 12:04
< >
分享
所有回答(4)
0

直接截取出来1436338459317 然后new Date(1436338459317) 就OK了

anhuisunfei | 园豆:6 (初学一级) | 2015-07-27 13:16
0
用 Select 函数 

IEnumerable<Credit.Models.c_creditLevelDetail> cCLD = acld.Gets(pageIndex, Credit.ActionData.PagingInfo.PageSize, out recordCount).Select(new { dt =  dt.ToString("yy-MM-DD")});
zhengldg | 园豆:462 (菜鸟二级) | 2015-07-27 13:22

就这样就OK了,不过Select里面需要把ID也取到

支持(0) 反对(0) 稳稳的河 | 园豆:4216 (老鸟四级) | 2015-07-27 17:22
0

2楼这种我感觉又多循环计算了一次,最好在里面就把这个格式修改了

gw2010 | 园豆:1487 (小虾三级) | 2015-07-29 16:13
0

这种应该直接拿到前端做一下处理,其实前端应该必备这种时间转换的函数的,这里提供一份,注意这里面有一些依赖函数,完整的代码请参阅这里:

https://github.com/linkFly6/Said/blob/master/Said/Content/Back/JavaScript/so/so.js

在页面中搜索"dateformat:"即可找到实现:

 

 1 var date={
 2 //转换时间
 3         parseDate: function (jsonDate) {
 4             try {
 5                 var type = jQuery.type(jsonDate);
 6                 if (type === 'date') return jsonDate;
 7                 if (!jsonDate) return null;
 8                 return new Date(type === 'number' ? jsonDate : parseInt(String(jsonDate).replace("/Date(", "").replace(")/", ""), 10));
 9             } catch (e) {
10                 return null;
11             }
12         },
13         //json时间格式化为正常时间
14         dateFormat: function (jsonDate, format) {
15             /// <summary>
16             /// 1: dataFormat(jsonDate,format) - 将json日期格式转换为正常格式,例:/Date(1420638776887)/
17             /// &#10; 1.1 - dateFormat(String) - 将指定json格式的字符串转换为时间,并按照默认格式返回
18             /// &#10; 1.2 - dateFormat(Date) - 将指定的时间转换为默认字符串格式返回
19             /// &#10; 1.3 - dateFormat(String, String) - 转换json时间,并指定格式化字符串
20             /// &#10; 1.4 - dateFormat(Date, String) - 参考如上
21             /// </summary>
22             /// <param name="jsonDate" type="String">
23             /// json日期格式的字符串,或Date时间对象
24             /// </param>
25             /// <param name="format" type="String">
26             /// 格式化字符串,自定义格式化时间字符串请参考MSDN - C# DateTime.ToString(String):http://msdn.microsoft.com/zh-cn/library/8kb3ddd4.aspx
27             /// &#10; 支持的字符串自定义格式如下:
28             /// &#10; yyyy - 4位数年份,例如:2015
29             /// &#10; MM - 2位数月份,自动补零,例:02
30             /// &#10; M - 1位数月份,例:2
31             /// &#10; dd - 2位数日期,例:08
32             /// &#10; d - 1位数日期,例:8
33             /// &#10; HH - 2位数24小时,例:3
34             /// &#10; H - 1位数24小时,例:03
35             /// &#10; hh - 2位数12小时,例:PM 08/AM 03
36             /// &#10; h - 1位数12小时,例:AM 8/PM 3
37             /// &#10; mm - 2位数分钟数,例:09
38             /// &#10; m - 1位数分钟数,例:9
39             /// &#10; ss - 2位数秒数,例:01
40             /// &#10; s - 1位数秒数,例:1
41             /// &#10; fff - 3位数毫秒,例:009
42             /// &#10; f - 1位数毫秒,例:9
43             /// </param>
44             /// <returns type="String" />
45             if (!format || so.type(format) !== 'string')
46                 format = 'yyyy-MM-dd HH:mm:ss';
47             var date = so.parseDate(jsonDate);
48             if (!date) return '';
49             var month = date.getMonth() + 1,
50                 day = date.getDate(),
51                 hours = date.getHours(),
52                 hours12 = hours > 11 ? 'PM' + (hours - 12) : 'AM' + hours,//12小时制1位数
53                 hours12double = hours > 11 ? 'PM ' + padNumber(hours - 12, 2) : 'AM ' + padNumber(hours, 2),//12小时制2位数
54                 minutes = date.getMinutes(),
55                 seconds = date.getSeconds(),
56                 milliseconds = date.getMilliseconds();
57             return format
58                 .replace('yyyy', date.getFullYear())//4位数年份
59                 .replace('MM', padNumber(month, 2))//2位数月份
60                 .replace('M', padNumber(month, 2))//1位数月份
61                 .replace('dd', padNumber(day, 2))//2位数日期
62                 .replace('d', day)//1位数日期
63                 .replace('HH', padNumber(hours, 2))//24小时制2位数
64                 .replace('H', hours)//24小时制1位数
65                 .replace('hh', hours12double)//12小时制2位数
66                 .replace('h', hours12)//12小时制1位数
67                 .replace('mm', padNumber(minutes, 2))//2位分钟
68                 .replace('m', minutes)//1位分钟
69                 .replace('ss', padNumber(seconds, 2))//2位秒数
70                 .replace('s', seconds)//1位秒数
71                 .replace('fff', padNumber(milliseconds, 3))//3位数毫秒
72                 .replace('f', milliseconds)//1位数毫秒
73             //未来是否支持星期(dddd作为星期)?加入第三个参数扩展格式化?可以自定义解析格式?
74         }    
dateFormat
linkFly | 园豆:291 (菜鸟二级) | 2015-08-06 14:12
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册