上一篇中,我们分析了页面中的控件和数据绑定中的扩展方法,今天我们看数据的查询和显示。其中 ,数据的查询属于业务逻辑层(Business),而显示属于UI层。
假设我们要根据以下两个条件进行查询:
日志分类(ID)
发布时间(范围)
两者为“AND”的关系,则查询可以通过通过扩展IQueryable<Blog>类实现,该功能定义在 BlogExtension类中(位于DongBlog.Business\Blogs\Blog.cs文件中),代码如下:
1: /// <summary> 2: /// 根据日志分类取得日志 3: /// </summary> 4: /// <param name="query">日志查询</param> 5: /// <param name="blogClassID">日志分类ID</param> 6: /// <param name="createDataTimeStart">日志发表的起始时间</param> 7: /// <param name="createDataTimeEnd">日志发表的结束时间</param> 8: /// <returns>该分类下的日志</returns> 9: public static List<Blog> GetBlogsBy(this IQueryable<Blog> query, int? blogClassID, DateTime? createDataTimeStart, DateTime? createDataTimeEnd) 10: { 11: if (query == null) 12: throw new ArgumentNullException("query"); 13: 14: var q = query.AsQueryable(); 15: 16: if (blogClassID.HasValue) 17: q = q.Where(b => b.BlogClassID == blogClassID.Value); 18: if (createDataTimeStart.HasValue) 19: q = q.Where(b => b.CreateDateTime > createDataTimeStart.Value); 20: if (createDataTimeEnd.HasValue) 21: q = q.Where(b => b.CreateDateTime < createDataTimeEnd.Value); 22: 23: return q 24: .OrderByDescending(b => b.CreateDateTime) 25: .ToList(); 26: }
以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索日志
, 查询
, query
, 分类
, 时间
查询日志
,以便于您获取更多的相关知识。
时间: 2024-10-14 20:47:37