当前位置: 首页 > news >正文

江苏建设厅官方网站江门建网站

江苏建设厅官方网站,江门建网站,百度权重排名分析,赣州建设局网站获取DataTable的前N行数据然后按指定字段排序 可以使用以下三种代码: 第一种:使用Linq DataTable dtLast dataTable.AsEnumerable().Take(count).OrderBy(dataRow > Convert.ToInt32(dataRow["Sequence"])).CopyToDataTable(); 第二种…

获取DataTable的前N行数据然后按指定字段排序

可以使用以下三种代码:

第一种:使用Linq

DataTable dtLast = dataTable.AsEnumerable().Take(count).OrderBy(dataRow => Convert.ToInt32(dataRow["Sequence"])).CopyToDataTable();

第二种:使用默认视图的Sort属性:

            DataTable dtLast = dataTable.AsEnumerable().Take(count).CopyToDataTable();dtLast.DefaultView.Sort = "Sequence asc";//逆序为Sequence descdtLast = dtLast.DefaultView.ToTable();

第三种:使用循环迭代

            DataTable dtLast = dataTable.Clone();//克隆表结构,行数为0for (int i = 0; i < getCount; i++){dtLast.Rows.Add(dataTable.Rows[i].ItemArray);}//按照Sequence进行排序DataRow[] array = dtLast.Select("1=1", "Sequence");dtLast = array.CopyToDataTable();

整体测试程序如下:

控制台应用程序FilterDataTableDemo

using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace FilterDataTableDemo
{class Program{static void Main(string[] args){int topCount = 5;DataTable dataTable = GetDataTable();PrintDataTable(dataTable);Console.WriteLine($"----------【使用Linq】打印DataTable的前【{topCount}】行并按Sequence顺序排序----------");DataTable dtLinq = GetTopDataAndOrderUseLinq(dataTable, topCount);PrintDataTable(dtLinq);Console.WriteLine($"--------【使用视图View】打印DataTable的前【{topCount}】行并按Sequence顺序排序--------");DataTable dtView = GetTopDataAndOrderUseView(dataTable, topCount);PrintDataTable(dtView);Console.WriteLine($"--------【使用循环迭代】打印DataTable的前【{topCount}】行并按Sequence顺序排序--------");DataTable dtIterator = GetTopDataAndOrderUseIterator(dataTable, topCount);PrintDataTable(dtIterator);Console.ReadLine();}/// <summary>/// 使用Linq获取前N行数据并排序/// </summary>/// <param name="dataTable"></param>/// <param name="count"></param>/// <returns></returns>static DataTable GetTopDataAndOrderUseLinq(DataTable dataTable, int count) {DataTable dtLast = dataTable.AsEnumerable().Take(count).OrderBy(dataRow => Convert.ToInt32(dataRow["Sequence"])).CopyToDataTable();return dtLast;}/// <summary>/// 使用视图的默认排序/// </summary>/// <param name="dataTable"></param>/// <param name="count"></param>/// <returns></returns>static DataTable GetTopDataAndOrderUseView(DataTable dataTable, int count){DataTable dtLast = dataTable.AsEnumerable().Take(count).CopyToDataTable();dtLast.DefaultView.Sort = "Sequence asc";//逆序为Sequence descdtLast = dtLast.DefaultView.ToTable();return dtLast;}/// <summary>/// 使用循环迭代获取前N行数据并排序/// </summary>/// <param name="dataTable"></param>/// <param name="count"></param>/// <returns></returns>static DataTable GetTopDataAndOrderUseIterator(DataTable dataTable, int count){//考虑到 获取的行数比数据表本身的行数还要多,这里取较小值int getCount = Math.Min(dataTable.Rows.Count, count);DataTable dtLast = dataTable.Clone();//克隆表结构,行数为0for (int i = 0; i < getCount; i++){dtLast.Rows.Add(dataTable.Rows[i].ItemArray);}//按照Sequence进行排序DataRow[] array = dtLast.Select("1=1", "Sequence");dtLast = array.CopyToDataTable();return dtLast;}/// <summary>/// 生成测试内存表/// </summary>/// <returns></returns>static DataTable GetDataTable() {DataTable dt = new DataTable("Test");dt.Columns.Add("CoreId", typeof(int));dt.Columns.Add("Sequence", typeof(int));dt.Columns.Add("TestName", typeof(string));dt.Rows.Add(10, 5, "云天河");dt.Rows.Add(9, 4, "柳梦璃");dt.Rows.Add(8, 3, "韩菱纱");dt.Rows.Add(7, 2, "慕容紫英");dt.Rows.Add(6, 1, "璇玑");dt.Rows.Add(5, 5, "怀朔");dt.Rows.Add(4, 4, "云天青");dt.Rows.Add(3, 3, "夙玉");dt.Rows.Add(2, 2, "夙瑶");dt.Rows.Add(1, 1, "玄霄");return dt;}/// <summary>/// 打印内存数据表信息/// </summary>/// <param name="dataTable"></param>static void PrintDataTable(DataTable dataTable) {for (int i = 0; i < dataTable.Rows.Count; i++){Console.WriteLine(string.Join(",", dataTable.Rows[i].ItemArray));}}}
}

程序运行如图:

 

http://www.yayakq.cn/news/983835/

相关文章:

  • 马鞍山做网站义乌网八方资源家1688网商网
  • 网站建设鄂尔多斯wordpress login
  • 建一个门户网站wordpress标签链接
  • 建设一个网站怎么赚钱模版网站建设
  • 织梦网站tag自定义插件建设一站式服务网站
  • 企业网站seo关键词优化排名思路二级域名分发
  • wordpress f5百度关键词优化送网站
  • 网站建站作业网站未备案可以上线吗
  • 如何做高端网站网站运营繁忙
  • 网站建设台州手机新机价格网站
  • 湖南网站建设公司 都来磐石网络网站备案ip查询系统
  • 网站建设类图书有哪些一家专门做内部优惠的网站
  • 金融网站建设多少钱网站开发从零到上线
  • 做网站设计的广告公司泰安企业网站建设电话
  • 太原百度网站快速优化高端网站制作网站设计
  • 网站建设中网站功能描述书功能seo排名优化教学
  • 网站需要网监备案别人的wordpress打开很快
  • 做的网站提示不安全问题天津做手机网站建设
  • 开封市住房和城乡建设局网站哪里可以免费申请空间 注册域名 申请网站
  • 网站ip如何做跳转海外电商怎么做如何从零开始
  • 宁波微网站建设c 语言网站建设
  • 公司想做个网站图书网站建设论文
  • 运行网站需要多少钱怎么做网页赚取点击率从而赚钱
  • 网站搭建大型公司宁夏建设管理局网站
  • 网摘网站推广法吉安建设局官方网站
  • 二手车网站开发过程培训网站开发需求说明书
  • 聊城网站建设动态wordpress 新浪微博登入
  • 哈尔滨自助建站模板wordpress网易云插件怎么用
  • 自己做的网站如何上线工业和信息化部网站备案管理系统
  • 城市管理如何宣传市建设网站贵州企业seo