构建DataTable

DataTable dtUserInfo = new DataTable("UserInfo");//1.构建DataTable
dtUserInfo.Columns.Add("UserName", typeof(string));//2.为DataTable设置列
//dtUserInfo.Columns.Add("UserName");
dtUserInfo.Columns.Add("Gender", typeof(int));DataRow drInpuUserInfo = dtUserInfo.NewRow();//3.从获取一个DataRow对象
drInpuUserInfo["UserName"] = dt.Rows[]["UserName"];//4.为这个DataRow对象赋值,赋值方式一
dtUserInfo.Rows.Add(drInpuUserInfo);//5.将赋值好的dr加回dt dt.Rows.Add("", "xxx", "yyy", );//dr赋值方式二

DataTable.ImportRow(dr)与DataTable.Rows.Add(dr)区别

DataRow dr = dtResult.NewRow();
//...
dtResult.Rows.Add(dr.ItemArray);
DataTable sourceDt = this.GetSqlData(sql, parms);
DataTable destincDt = sourceDt.Clone();//仅复制结构
//....
destincDt.ImportRow(sourceDt.Rows[i]);//用来将其他表的DataRow复制到当前的表,如果是复制自己的DataRow毫无意义,是不会成功的。
//destincDt.Rows.Add(sourceDt.Rows[i]);is Wrong

DataRow转换为DataTable工具方法

public DataTable SreeenDataTable(DataTable dt, string strWhere)
{
if (dt.Rows.Count <= ) return dt; //当数据为空时返回
DataTable dtNew = dt.Clone(); //复制数据源的表结构
DataRow[] dr = dt.Select(strWhere); //strWhere条件筛选出需要的数据!
for (int i = ; i < dr.Length; i++)
{
dtNew.Rows.Add(dr[i].ItemArray); // 将DataRow添加到DataTable中
}
return dtNew;
}

Select Compute

dt.Select("QuestionID=" + QuestionID + " And RelationID=30");
dt.Compute("Sum(Num)", "")

DataTable添加列

DataTable dt_1 = iniResultDs.Tables[]; //组装扩展字段
DataTable dt_2 = iniResultDs.Tables[]; //扩展字段
for (int i = ; i < dt_2.Rows.Count; i++)
{
string columnName = dt_2.Rows[i]["ColumnName"].ToString();
string columnValue = dt_2.Rows[i]["Value"].ToString();
dt_1.Columns.Add(columnName);
dt_1.Rows[][columnName] = columnValue;
}
DataSet resultDs = new DataSet();
resultDs.Tables.Add(dt_1.Copy());

DataTable取列

DataTable dataTable = talentBLL.GetPuzzleBasicPageDt(parms, "LastUpdateTime DESC,CreatedTime DESC,BasicID DESC", length, page, out recordCount);
dataTable = dataTable.DefaultView.ToTable(false, new string[] { "BasicID", "Name", "Gender", "City","Phone", "Email", "SalaryFromTo",
"SalaryLow","SalaryHigh","WorkYear","CompanyName","Positions"});

DataTable--可能你不知道的一些功能(排序、查询、合并操作)

C#自带计时器(用于简单的性能估算)

var text = "Whilst playing badminton, I ruptured my Achilles tendon."; //GetTestText();//生成测试文本
Console.WriteLine(text);
IStringAna ana = new StringAna();
var sp = Stopwatch.StartNew();
var rlt = ana.Ana(text);//需测算的句子拆分单词
Console.WriteLine($"Elapsed:{sp.ElapsedTicks}");//简便的性能测试方法,计时器

DataTable常用代码的更多相关文章

  1. Datatable常用系列一

    Datatable常用系列一 一.用作集合存储数据: DataTable dt = new DataTable("action"); for (int i = 0; i < ...

  2. GCD 常用代码

    GCD 常用代码 体验代码 异步执行任务 - (void)gcdDemo1 { // 1. 全局队列 dispatch_queue_t q = dispatch_get_global_queue(0, ...

  3. 转--Android实用的代码片段 常用代码总结

    这篇文章主要介绍了Android实用的代码片段 常用代码总结,需要的朋友可以参考下     1:查看是否有存储卡插入 复制代码 代码如下: String status=Environment.getE ...

  4. 刀哥多线程之03GCD 常用代码

    GCD 常用代码 体验代码 异步执行任务 - (void)gcdDemo1 { // 1. 全局队列 dispatch_queue_t q = dispatch_get_global_queue(0, ...

  5. jquery常用代码集锦

    1. 如何修改jquery默认编码(例如默认GB2312改成 UTF-8 ) 1 2 3 4 5 $.ajaxSetup({     ajaxSettings : {         contentT ...

  6. Mysql:常用代码

    C/S: Client Server B/S: Brower Server Php主要实现B/S .net IIS Jave TomCat LAMP:L Mysql:常用代码 Create table ...

  7. javascript常用代码大全

    http://caibaojian.com/288.html    原文链接 jquery选中radio //如果之前有选中的,则把选中radio取消掉 $("#tj_cat .pro_ca ...

  8. Android 常用代码大集合 [转]

    [Android]调用字符串资源的几种方法   字符串资源的定义 文件路径:res/values/strings.xml 字符串资源定义示例: <?xml version="1.0&q ...

  9. NSIS常用代码整理

    原文 NSIS常用代码整理 这是一些常用的NSIS代码,少轻狂特意整理出来,方便大家随时查看使用.不定期更新哦~~~ 1 ;获取操作系统盘符 2 ReadEnvStr $R0 SYSTEMDRIVE ...

随机推荐

  1. 关于AngularJS(1)

      在讲正题之前,先说一下有关angular简介方面的信息: 1. angularJS  诞生于2009年,由Misko Hevery 等人创建,后为Google所收购.是一款优秀的前端JS框架,已经 ...

  2. Codeforces Round #382(div 2)

    A.= = B. 题意:给出n个数和n1和n2,从n个数中分别选出n1,n2个数来,得到n1个数和n2个数的平均值,求这两个平均值的最大和 分析:排个序从后面抽,注意先从末尾抽个数小的,再抽个数大的 ...

  3. 【C#】类单例 可以解决全局变量的问题

    单件模式(Singleton):保证一个类仅有一个实例,并提供一个访问它的全局访问点. 知道 详解

  4. 冰冻三尺非一日之寒--jQuery

    第十七章     jQuery          http://jquery.cuishifeng.cn/ 一.过滤选择器: 目的:处理更复杂的选择,是jQuery自定义的,不是CSS3中的选择器. ...

  5. 锋利的jquery-读书笔记(一)

    最近转职做前端,学了两个月目前学到jquery的部分,看的是<锋利的jquery>这本书,特地开了博客将自己学习过程中看到的一些知识做一个笔记. 第一章: 一.jQuery对象和DOM对象 ...

  6. java编码

    /**     * @Comments:default:ISO-8859-1 -> UTF-8 乱码则转码     * @param: str(乱码字符),coding(default:ISO- ...

  7. Java的多线程机制系列:不得不提的volatile及指令重排序(happen-before)

    一.不得不提的volatile volatile是个很老的关键字,几乎伴随着JDK的诞生而诞生,我们都知道这个关键字,但又不太清楚什么时候会使用它:我们在JDK及开源框架中随处可见这个关键字,但并发专 ...

  8. CodeForces - 662A Gambling Nim

    http://codeforces.com/problemset/problem/662/A 题目大意: 给定n(n <= 500000)张卡片,每张卡片的两个面都写有数字,每个面都有0.5的概 ...

  9. 【BZOJ-3998】弦论 后缀自动机

    3998: [TJOI2015]弦论 Time Limit: 10 Sec  Memory Limit: 256 MBSubmit: 2018  Solved: 662[Submit][Status] ...

  10. TypeScript 素描 - 函数

    /* 函数和javaScript并没有太大差别,只是增加了额外的功能,使函数有 更为强大的功能而且更易用使用 */ //现在支持函数的参数指定类型,在前面的博文中大家应该已经看到 //还可以指定函数的 ...