1、两个相同字段表的合并:

  1. public static DataSet CombineTables(DataSet _ds, DataTable _dt1, DataTable _dt2)
  2. {
  3. DataSet ds = _ds.Clone();
  4. //ds.Tables[0].Clone();
  5. ds.Tables[].Rows.Clear();
  6. int i = ;
  7. for ( i = ; i < _dt1.Rows.Count; i++)
  8. {
  9. ds.Tables[].ImportRow(_dt1.Rows[i]);
  10. }
  11. for (int j = ; j < _dt2.Rows.Count; j++)
  12. {
  13. ds.Tables[].ImportRow(_dt2.Rows[j]);
  14. }
  15. return ds;
  16. }

2、对表的数据截取:

  1. public static DataSet CopyScopeRows(DataSet source, int startRowNum, int endRowNum) {
  2. DataSet des = source.Clone();
  3. des.Tables[].Rows.Clear();
  4. for (int i = startRowNum; i < source.Tables[].Rows.Count && i <= endRowNum; i++) {
  5. des.Tables[].ImportRow(source.Tables[].Rows[i]);
  6. }
  7. return des;
  8. }

3、数据行的筛选:

  1. public static DataSet CopyScopeRows(DataSet source, string filter) {
  2. DataSet des = source.Clone();
  3. DataSet _ds = null;
  4. des.Tables[].Rows.Clear();
  5. try
  6. {
  7. DataRow[] rows = source.Tables[].Select(filter);
  8. foreach (DataRow row in rows) {
  9. des.Tables[].ImportRow(row);
  10. }}
  11. catch (Exception ex) { return _ds; }
  12. finally
  13. {}
  14. return des;
  15. }

4、数据行的筛选,并可以排序:

  1. public static DataSet CopyScopeRows(DataSet source, string filter, string order) {
  2. DataSet des = source.Clone();
  3. des.Tables[].Rows.Clear();
  4. DataRow[] rows = source.Tables[].Select(filter, order);
  5. foreach (DataRow row in rows)
  6. {
  7. des.Tables[].ImportRow(row);
  8. }
  9. return des;
  10. }

5、数据行的筛选,并可截取数据行:

  1. public static DataSet CopyScopeRows(DataSet source, string filter, int startRowNum, int endRowNum) {
  2. DataSet des = source.Clone();
  3. des.Tables[].Rows.Clear();
  4. DataRow[] rows = source.Tables[].Select(filter);
  5. for (int i = startRowNum; i < rows.Length && i <= endRowNum; i++)
  6. {
  7. des.Tables[].ImportRow(rows[i]);
  8. }
  9. return des;
  10. }

6、数据行的筛选、排序,并可截取数据行:

  1. public static DataSet CopyScopeRows(DataSet source, string filter, string order, int startRowNum, int endRowNum) {
  2. DataSet des = source.Clone();
  3. des.Tables[].Rows.Clear();
  4. DataRow[] rows = source.Tables[].Select(filter, order);
  5. for (int i = startRowNum; i < rows.Length && i <= endRowNum; i++) {
  6. des.Tables[].ImportRow(rows[i]);
  7. }
  8. return des;
  9. }
  1. public static object GetValueByKey(DataTable table, string keyName, object keyValue, string returnName) {
  2. object obj = null;
  3. table.PrimaryKey = new DataColumn[] { table.Columns[keyName] };
  4. DataRow row = table.Rows.Find(keyValue);
  5. if (row != null) { obj = row[returnName]; }
  6. return obj;
  7. }
  1. public static object GetValueByKeys(DataTable table, object[] keyValue, string returnName)
  2. {
  3. object obj = null;
  4.  
  5. DataColumn[] keys = new DataColumn[];
  6. keys[] = table.Columns[];
  7. keys[] = table.Columns[];
  8. table.PrimaryKey = keys;
  9.  
  10. DataRow row = table.Rows.Find(keyValue);
  11. if (row != null) { obj = row[returnName]; }
  12. return obj;
  13. }

ASP.NET中Dataset的table数据合并、数据截取、数据排序的更多相关文章

  1. ASP.Net中关于WebAPI与Ajax进行跨域数据交互时Cookies数据的传递

    本文主要介绍了ASP.Net WebAPI与Ajax进行跨域数据交互时Cookies数据传递的相关知识.具有很好的参考价值.下面跟着小编一起来看下吧 前言 最近公司项目进行架构调整,由原来的三层架构改 ...

  2. ASP.NET中Service接受前端单个及多个数据的写法

    MVC中的Service主要是用来处理数据交互的. 前端页面传递一个或者多个参数到Service的写法: 一个参数写法: public DataTable 方法名 (Pagination pagina ...

  3. R语言数据合并使用merge数据追加使用rbind和cbind

    R语言中的横向数据合并merge及纵向数据合并rbind的使用 我们经常会遇到两个数据框拥有相同的时间或观测值,但这些列却不尽相同.处理的办法就是使用merge(x, y ,by.x = ,by.y ...

  4. SQLServer 中多行数据合并成一行数据(一个字段)

    需求:有四行数据,如下: 1.苹果 2.橘子 3.桃子 4.波罗 合并成一个字段:苹果,橘子,桃子,波罗: 需求明确之后,先弄点测试数据,上代码: --创建一个临时表 Create table #te ...

  5. sqlserver中 多条数据合并成一条数据 (stuff 与 for xml path 连用)

    SQL 列转行,即多行合并成一条   需求:按照分组,将多条记录内容合并成一条,效果如下: 数据库示例: CREATE TABLE [t2]([NID] [bigint] NULL,[district ...

  6. react中使用antd Table组件滚动加载数据的实现

    废话不多说,直接上代码.一目了然. import React, { Component } from "react"; import { Table } from "an ...

  7. mysql中将多行数据合并成一行数据

    .1GROUP_CONCAT()中的值为你要合并的数据的字段名; SEPARATOR 函数是用来分隔这些要合并的数据的: ' '中是你要用哪个符号来分隔: 2.必须要用GROUP BY 语句来进行分组 ...

  8. Oracle查询多行数据合并成一行数据

    例如: select base_id, translate (ltrim (text1, '/'), '*/', '*,') xmmc,translate (ltrim (text2, '/'), ' ...

  9. 数据库groub by分组后,把多行数据合并成一行数据(Oracle、Postgres)

    关键字 row_number() over (partition by)   例如,下面的数据, 这是按照name分组后,展示property值. 我们想得到这样的值; 第一步:将每一组的proper ...

随机推荐

  1. 运维工作笔记-------nginx的反向代理

    1.nginx的反向代理意义 一般来说,我们在项目中,不会直接让项目服务器ip与外网做直接映射,这样一则是不安全,二是客户直接去访问项目服务器,对项目服务器带来的压力太大,从而导致项目运行速度变慢,程 ...

  2. 过滤器实现 (cookie认证)

    cookie用来做身份认证,非常好用,只需要设置Authentication和Authorization就行了. 但是 ,如果cookie不能用了,怎么办?  不要紧,我们也可以用过滤器进行身份认证. ...

  3. 2.解决虚拟机中centos联网的问题

    首先:打开虚拟机的编辑菜单,选择“虚拟机网络编辑器” 虚拟机网络编辑器 在虚拟机网络编辑器中选择还原默认设置 接下来开启CentOS7虚拟机 在这里需要注意的是必需以管理员身份来进行设置,所以要用管理 ...

  4. 网络流Dinic(本篇介绍最大流)

    前言:看到网上Dinic和ISAP的比较,多数人认为ISAP更快,不容易爆栈.当然,也有少数人认为,在多数情况下,Dinic比较稳定.我认为Dinic的思路比ISAP更简明,所以选择了Dinc算法 介 ...

  5. Solidity构造函数和析构函数

    构造函数:当方法名字和合约名字相同的时候,这个就是构造函数,构造函数在合约对象创建之后执行的 contract Person{ function Peron(){//构造函数Person ... } ...

  6. Solr简单使用

    1.添加索引 // 第一步:把solrJ的jar包添加到工程中. // 第二步:创建一个SolrServer,使用HttpSolrServer创建对象. SolrServer solrServer = ...

  7. iOS rebuild from bitcode对ipa大小的影响

    https://developer.apple.com/library/content/technotes/tn2432/_index.html 为了测试一下rebuild from bitcode的 ...

  8. 通过mysqlbinlog 恢复数据

    前提数据库开启了bin_log记录日志. 查看日志 刷新日志 flush logs; 再次查看 show binary logs; 向表中插入一条数据 现在执行delete误操作,删除所有的数据. d ...

  9. Flask开发微电影网站(十)

    1.后台管理之角色管理 1.1 角色管理之定义角色表单 在app的admin目录的forms.py文件中,定义角色表单 # 角色表单 class RoleForm(FlaskForm): name = ...

  10. element el-tree 添加图标

    1.指定渲染函数:render-content="renderContent" <el-tree ref="tree" :data="funct ...