今天群里有同学问如何用linq取结果集的行号,查了一下资料,发现linq有很简单的方法可以实现,花了几分钟写了一个测试用例,现记录下来,以备参考:

    /// <summary>
/// 测试类
/// </summary>
public class models
{
public int id { set; get; }
public string Name { set; get; }
public string Phone { set; get; }
public string Address { set; get; }
public DateTime Birthday { set; get; }
private static int idx { set; get; } = 0;
public models()
{
id = idx++;
Name = "testName" + id.ToString();
Phone = "testPhone" + id.ToString();
Address = "testAddress" + id.ToString();
Birthday = DateTime.Now.AddHours(id);
} }

下面是实现方法:

            var list = new List<models>();
list.Add(new models());
list.Add(new models());
list.Add(new models());
list.Add(new models());
list.Add(new models());
list.Add(new models());
var tt = list.OrderBy(p => p.Name).OrderByDescending(p =>p.Birthday).OrderByDescending(p => p.id).Select((p, idx) => new {
row = idx,
name = p.Name,
phone = p.Phone
});

Linq查询数据集取得排序后的序列号(行号)的更多相关文章

  1. SQL 分组后取最小行号记录

    本示例测试两个表联接查询后,分组并取分组后的最小行号记录 测试表: tb1表结构如下: CREATE TABLE [dbo].[tb1]( ) NOT NULL, ) NULL, ) NULL, CO ...

  2. Linq查询操作之排序操作

    在Linq中排序操作可以按照一个或多个关键字对序列进行排序.其中第一个排序关键字为主要关键字,第二个排序关键字为次要关键字.Linq排序操作共包含以下5个基本的操作. 1.OrderBy操作,根据排序 ...

  3. pycharm 序列号/行号 的宽度太宽了如何调整

    问题:行号宽度嫌宽: 解决:在settings里面,如下图顺序,取消“show gutter icons”的勾,即可. 调整后如下图:

  4. mysql 排序后获得某行的位置

    假设有test表,下图为表机构和数据,score表示积分.现在要查询积分排名为第几的id?? 查询语句 select id,score,(@rowno:=@rowno+1) as rowno from ...

  5. EasyUI datagrid : 启用行号、固定列及多级表头后,头部行号位置单元格错位的问题

    症状如图: 上图中,行号列与checkbox 列融合了.解决方法是在datagrid 的 onLoadSuccess 事件中加入如下代码: var opts = $(this).datagrid('o ...

  6. vs2012后设置显示行号结果整个窗口都变成黑色了,怎么变回来

  7. R: data.frame 数据框的:查询位置、排序(sort、order)、筛选满足条件的子集。。

    ################################################### 问题:数据框 data.frame 查.排序等,   18.4.27 怎么对数据框 data.f ...

  8. 【转载】Sqlserver中查询窗口显示行号

    在Sqlserver中编写语句的时候,有时候因为业务逻辑比较复杂,编写的语句会比较多,此时如果编辑器中显示代码的行号,则对于我们的语句编写有很好的辅助作用.sqlserver默认未开启行号显示功能,可 ...

  9. Linq EF 根据字符列表排序或List根据列表排序以及Linq查询类型转换

    //model.BBSCategoryIDList=>{10,23,12}或者{1,3,2} //model.BBSCategoryIDs=>1,3,2或者10,23,12 //SqlFu ...

随机推荐

  1. 修改pc机的mac地址 以及 mac地址的组成

    在"开始"菜单的"运行"中输入regedit,打开注册表编辑器,展开注册表到:HKEY_LOCAL_ MACHINE/System/CurrentControl ...

  2. ES pom配置

    https://github.com/elastic/elasticsearch/issues/19415 <dependency> <groupId>org.elastics ...

  3. supervisor使用详解

    1.什么是supervisorsupervisor是用python写的一个进程管理工具,用来启动,重启,关闭进程. 2.supervisor的安装 pip install supervisor 3.s ...

  4. 化繁为简 如何向老婆解释MapReduce?(转载)

    化繁为简 如何向老婆解释MapReduce? 昨天,我在Xebia印度办公室发表了一个关于MapReduce的演说.演说进行得很顺利,听众们都能够理解MapReduce的概念(根据他们的反馈).我成功 ...

  5. Android多媒体分析-通过MediaStore获取Audio信息

    public void getAlldata() { ContentResolver cr = getApplication().getContentResolver(); if (cr == nul ...

  6. ocanvas 画板

    使用ocanvas做了个简单的在线画板. ocanvas参考:http://ocanvas.org/ 效果如下: 主要代码如下: <!DOCTYPE html> <html> ...

  7. !!!!!122. Best Time to Buy and Sell Stock II

    Say you have an array for which the ith element is the price of a given stock on day i. Design an al ...

  8. 黄聪:No 'Access-Control-Allow-Origin' header is present on the requested resource解决办法

    在.htaccess文件里面添加下面代码: <IfModule mod_headers.c> Header set Access-Control-Allow-Origin "*& ...

  9. CSS基本知识汇总

    1.CSS 简介 CSS 指层叠样式表 (Cascading Style Sheets),是一种用来表现 HTML 文档样式的语言,样式定义如何显示 HTML 元素,是能够真正做到网页表现与结构分离的 ...

  10. GC之六--SystemGC完全解读

    概述 JVM的GC一般情况下是JVM本身根据一定的条件触发的,不过我们还是可以做一些人为的触发,比如通过jvmti做强制GC,通过System.gc触发,还可以通过jmap来触发等,针对每个场景其实我 ...