用DataTable.Merge()解决了一个排序问题

首先明确一点,DataTable不支持排序
在一个DataTable(dt)中已经存在无序数据,要实现排序,我想到了两个方法:

方法一
可以先构造一个列表(list),按排序顺序存储dt主键列的值; 然后主要是利用DataTable.Merge方法

 1 StrongTypedDataTable tempDt;
 2 //使tempDt具有dt的Schema 和 Constraint
 3 tempDt = new StrongTypedDataTable();
 4 foreach(string key in list)
 5 {
 6    //如果某些列不允许空,则NewRow()->赋key值->再Add(dr).
 7    tempDt.Rows.Add(key, null.);
 8 }
 9 //合并后将维持tempDt中的顺序
10 tempDt.Merge(dt);
11 dt = tempDt;

方法二
思路:DataView支持排序,而DataView对象有方法ToTable,没有尝试过,已经理解ToTable原理或有机会用到的人给个答案吧:)

p.s 猪年第一篇post.

转载于:https://www.cnblogs.com/yicone/archive/2007/03/02/662209.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/269337.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

x299服务器芯片组,18核心炸裂!X299主板全集:为它真拼了

慵懒了多年的Intel终于彻底爆发了,一出手就让人震颤,直接把桌面平台从10核心推到了18核心(36线程),同时带来了新的家接口LGA2066,新的芯片组X299。这无疑是各家主板厂商的新机会,台北电脑展上X299主板就如同雨后春笋一…

常用口语

1. I see. 我明白了。2. I quit! 我不干了!3. Let go! 放手!4. Me too. 我也是。5. My god! 天哪!6. No way! 不行!7. Come on. 来吧(赶快)8. Hold on. 等一等。9. I agree。 我同意。10. Not bad. 还不错。11. Not ye…

更换密码之后连不上数据库

原因 ,服务记录的是之前的账号密码,自动开启SQL Server (MSSQL)服务的时候报密码错误。 解决方案: 1.把登录为 不是本地系统的账户密码改成你修改之后的密码。 2.把登录为改成本地系统 然后 启动sql服务 net start mssqlserver . 转载于:htt…

steam服务器102修复,分享steam错误代码102的解决方法

今天来聊聊一篇关于分享steam错误代码102的解决方法的文章,现在就为大家来简单介绍下分享steam错误代码102的解决方法,希望对各位小伙伴们有所帮助。1、打开CMD命令行,具体操作为CtrlR,然后输入CMD,即可进入命令行2、在命令行里面输入“netsh…

【BZOJ3160】万径人踪灭 Manacher+FFT

【BZOJ3160】万径人踪灭 Description Input Output Sample Input Sample Output HINT 题解:自己想出来1A,先撒花~(其实FFT部分挺裸的) 做这道题,第一思路很重要,显然看到这题的第一想法就是ans总数-不合法&…

金山吹响讨伐灰鸽子的号角

连续三年染指年度十大病毒、被反病毒专家称为最危险的后门程序“灰鸽子”病毒随着“灰鸽子2007”的发布,正在大规模集中爆发,据金山毒霸全球反病毒中 心统计,仅3月1日至13日,金山截获的灰鸽子变种数就达到521个。盗号、偷窥、敲诈…

在架设网站服务器时,实习实习报告网站服务器架设.doc

文档介绍:实****7网站服务器架设一、实验目的了解Web服务器、Ftp服务器基本配置项目;掌握Web服务器、Ftp服务器配置方法;掌握使用Ftp工具向Web服务器发布网页的方法;理解“服务器/客户”网络应用模式。二、实验内容配置并测试Web服务器站点;配置并测试Ftp服务器站点…

nyoj-20-吝啬的国度(深搜)

吝啬的国度 时间限制:1000 ms | 内存限制:65535 KB难度:3描写叙述在一个吝啬的国度里有N个城市。这N个城市间仅仅有N-1条路把这个N个城市连接起来。如今,Tom在第S号城市,他有张该国地图。他想知道如果自己要去參观第…

ADOMD.net概述

ADOMD.NET是一个标准的.NET数据提供者,它主要用来与多维数据源进行通信。它使用支持 XML for Analysis version 1.1标准的数据提供者连接数据源,使用TCP/IP或 HTTP流传输和接受SOAP请求。使用ADOMD.NET可以获取和操作多维数据,KPI和挖掘模型。…

Build Provider 不得不说的事

之前有同学翻译了使用BuildProvider生成DAL的文章,又在网上搜索了一下,感觉这是个很有意思的功能,最近在做点东西用到这个,的确让我省了不少的事情。其实Build Provider所做的工作是把一个文件的内容来控制生成IL代码,…

Python 环境搭建

本章节我们将向大家介绍如何在本地搭建Python开发环境。Python可应用于多平台包括 Linux 和 Mac OS X。你可以通过终端窗口输入 "python" 命令来查看本地是否已经安装Python以及Python的安装版本。Unix (Solaris, Linux, FreeBSD, AIX, HP/UX, SunOS, IRIX, 等等。)W…

sql语句Order by 报错列名不明确

select top 10 column1,column2,column3 from table1 where table1.id not in(select top 0 table1.id from table1 order by column1 asc) order by column1 asc 注意这种写法会报错 列名 column1 不明确 在查下时不把列名写出来,用* 就不会报错,目前还…

div不能控制tr和td的隐藏

可以使用table.rows.length来便历使用table.rows[i].style.display"none";来隐藏 转载于:https://www.cnblogs.com/deadshot123/archive/2007/03/21/682849.html

解决Pytohn安装第三方库出现read timed out 问题

输入pip --default-timeout100 install -U Packages 如pip --default-timeout100 install -U Pillow转载于:https://www.cnblogs.com/yuyang26/p/6898773.html

开发短信发送程序的几则技巧

主要针对smpp协议(扩展协议:cmpp等).1. check resp status and process it, such as incorrect bind status;2. control the send speed, the gw maybe full and can be blocked.3. character encoding.4. test in simulator first.

SHOW VARIABLES LIKE “tx_isolation“查看mysql查看当前数据库的事物隔离级别

SHOW VARIABLES LIKE "tx_isolation"查看mysql查看当前数据库的事物隔离级别