求一条SQL语句的排序用lamda怎么写?

ft1507999 2020-03-11 04:16:06
[size=18px]求解,下面语句的排序怎么用lamda实现?

SELECT * FROM [TFunds] 
ORDER BY CASE WHEN FilingDeadline >= GetDate() THEN 0 ELSE 1 END,IsRecommend Desc,ABS(DATEDIFF(hh, GETDATE(), FilingDeadline)),PublishTime desc
...全文
380 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
threenewbee 2020-03-11
  • 打赏
  • 举报
回复
orderbydescending(x => FilingDeadline >= DateTime.Now ? 0 : 1).Thenbydescending(x => x.IsRecommend).thenby(x => abs(FilingDeadline.Hour - DateTime.Now.Hour)).thenbydescending(x => x.PublishTime)
极客诗人 2020-03-11
  • 打赏
  • 举报
回复
linq倒是可以这样

static void Main(string[] args)
        {           
            List<TList> list = new List<TList>() {
                new TList(){ Id=2,Name="a1",AddTime=DateTime.Now },
                new TList(){ Id=1,Name="a2",AddTime=DateTime.Now.AddDays(1) },
                new TList(){ Id=3,Name="a3",AddTime=DateTime.Now.AddDays(2) },
                new TList(){ Id=5,Name="a4",AddTime=DateTime.Now.AddDays(3) },
                new TList(){ Id=4,Name="a5",AddTime=DateTime.Now.AddDays(4) },
                new TList(){ Id=6,Name="a6",AddTime=DateTime.Now.AddDays(5)},
                new TList(){ Id=7,Name="a7",AddTime=DateTime.Now.AddDays(6) },
            };
            List<TList> _list = list.OrderBy(x => x.Id > 4 ? 0 : 1).ThenByDescending(x => x.AddTime).ThenByDescending(x => Math.Abs((DateTime.Now.Subtract(x.AddTime).TotalHours))).ToList();


        }
        public class TList
        {
            public int Id { get; set; }
            public string Name { get; set; }
            public DateTime AddTime { get; set; }
        }
.框架特点: (1)简单逻辑模块实现零代码编程,通过简单配置即可实现增、删、改、查、数据列表、导入、导出、单字段编辑、批量编辑、复制、回收站、草稿箱、附属模块显示配置、列表搜索框和表单外键字段自动完成、列表视图自定义、表单自定义、表单附件、权限控制、缓存配置、数据库配置、单据编号配置、模块功能控制等功能,可线上增加功能模块、可线上增加字段 (2)完善的RABC权限体系,包括功能权限、字段权限、数据权限,支持菜单权限、列表按钮权限、字段查看、新增、编辑权限控制、数据查看、编辑、删除范围控制 (3)在系统中可支持模块分库,可实现读分离,可方便的将系统数据库与业务数据库分离 (4)模块缓存可配置,支持本地缓存、Memcached分布式缓存和Redis分布式缓存,可扩展其他缓存方式 (5)支持列表视图自定义,用户可定义多个视图(包括外侧树视图、树网格视图、分组视图),可定义关联模块视图,视图可自由切换 (6)支持视图字段自定义、搜索字段自定义、排序字段自定义、列表操作按钮自定义 (7)支持角色表单功能,对于同一模块针对不同的角色可建立不同的表单 (8)支持表单布局自定义,可自由配置成带tab标签、panel面板的表单;多种编辑方式支持包括弹出表单编辑、打开tab标签编辑、网格内行编辑、网格内表单编辑 (9)支持表单字段自定义,包括可编辑性自定义、控件类型和宽度自定义、字段验证自定义 (10)支持单据编码规则自定义 (11)支持日志功能,包括登录日志、操作日志、异常日志 (12)支持图标管理,可自行上传图标,将其应用到菜单、按钮、树及需要图标的地方 (13)模块开发简单,实体类建立后即具备第一条所述功能 (14)实体层、数据层、业务层、操作事件层可配置 (15)支持SQL语句操作、支持Lamda表达式与SQL联合查询、支持读分离 (16)多种关系类型数据库支持,目前支持的数据库类型有mssql,mysql,oracle,可扩展支持其他 (17)支持非关系型数据库Mongodb,可扩展支持其他 (18)支持自定义工作桌面,可为不同的角色定制不同的工作桌面 (19)支持IM(即时通迅)功能,支持单聊、群聊,支持图片、文件发送,支持头像设置 (20)系统任何模块以及后续加入模块均自动支持WebApi接口操作 (21)增加对工作流的支持,可在线设计、配置流程,支持单行、并行审批,支持子流程、分流、合流,支持回退、指派
Rookey.Frame是一套基于.NET MVC easyui的企业级极速开发框架,支持简单逻辑模块零代码编程、支持工作流(BPM)、支持二次开发,具有高扩展性、高复用性、高伸缩性。   框架特点 (1)简单逻辑模块实现零代码编程,通过简单配置即可实现增、删、改、查、数据列表、导入、导出、单字段编辑、批量编辑、复制、回收站、草稿箱、附 属模块显示配置、列表搜索框和表单外键字段自动完成、列表视图自定义、表单自定义、表单附件、权限控制、缓存配置、数据库配置、单据编号配置、模块功能控 制等功能,可线上增加功能模块、可线上增加字段 (2)完善的RABC权限体系,包括功能权限、字段权限、数据权限,支持菜单权限、列表按钮权限、字段查看、新增、编辑权限控制、数据查看、编辑、删除范围控制 (3)在系统中可支持模块分库,可实现读分离,可方便的将系统数据库与业务数据库分离 (4)模块缓存可配置,支持本地缓存、Memcached分布式缓存和Redis分布式缓存,可扩展其他缓存方式 (5)支持列表视图自定义,用户可定义多个视图(包括外侧树视图、树网格视图、分组视图),可定义关联模块视图,视图可自由切换 (6)支持视图字段自定义、搜索字段自定义、排序字段自定义、列表操作按钮自定义 (7)支持角色表单功能,对于同一模块针对不同的角色可建立不同的表单 (8)支持表单布局自定义,可自由配置成带tab标签、panel面板的表单;多种编辑方式支持包括弹出表单编辑、打开tab标签编辑、网格内行编辑、网格内表单编辑 (9)支持表单字段自定义,包括可编辑性自定义、控件类型和宽度自定义、字段验证自定义 (10)支持单据编码规则自定义 (11)支持日志功能,包括登录日志、操作日志、异常日志 (12)支持图标管理,可自行上传图标,将其应用到菜单、按钮、树及需要图标的地方 (13)模块开发简单,实体类建立后即具备第一条所述功能 (14)实体层、数据层、业务层、操作事件层可配置 (15)支持SQL语句操作、支持Lamda表达式与SQL联合查询、支持读分离 (16)多种关系类型数据库支持,目前支持的数据库类型有mssql,mysql,oracle,可扩展支持其他 (17)支持非关系型数据库Mongodb,可扩展支持其他 (18)支持自定义工作桌面,可为不同的角色定制不同的工作桌面 (19)支持IM(即时通迅)功能,支持单聊、群聊,支持图片、文件发送,支持头像设置 (20)系统任何模块以及后续加入模块均自动支持WebApi接口操作 (21)增加对工作流的支持,可在线设计、配置流程,支持单行、并行审批,支持子流程、分流、合流,支持回退、指派 框架整体架构图:   部分系统截图:   更多截图请参考作者博客:http://www.cnblogs.com/rookey/p/5230945.html 更多介绍:http://rookey.gotoip2.com/Page/Main.html?page=Main   开源地址:https://git.oschina.net/rookey/Rookey.Frame           标签:开发框架  easyui

8,497

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 LINQ
社区管理员
  • LINQ
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧