void do查询_Click(object sender, EventArgs e) { var __条件 = new M查询条件 { 类别 = this.in类别.Text, 每页数量 = this.u分页1.每页条数, 开始时间 = this.in起始时间.Value, 结束时间 = this.in结束时间.Value, 页码 = this.u分页1.当前页码 }; var __返回值 = _IT客户端.执行方法("日志", "查询", new Dictionary <string, string> { { "条件", HJSON.序列化(__条件) } }); var __结果 = HJSON.反序列化 <M查询结果>(__返回值); this.u分页1.总条数 = __结果.总数; this.out日志列表.Rows.Clear(); for (int i = 0; i < __结果.列表.Count; i++) { this.out日志列表.Rows.Add(__结果.列表[i].时间, __结果.列表[i].类别, __结果.列表[i].描述, __结果.列表[i].账号); } }
public M查询结果 查询(M查询条件 __条件) { lock (_锁) { var __结果 = _缓存.Where(q => q.类别 == __条件.类别 || string.IsNullOrEmpty(__条件.类别)).Reverse().ToList(); var __总数 = __结果.Count; var __数量 = __条件.每页数量 ?? 30; var __页码 = __条件.页码 ?? 1; var __起始索引 = (__页码 - 1) * __数量; if (__页码 > 1 && __结果.Count > __起始索引) { __结果 = __结果.Skip(__起始索引).ToList(); } return(new M查询结果 { 列表 = __结果.Take(Math.Min(__数量, __结果.Count)).ToList(), 总数 = __总数 }); } }