构建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. C# readonly 与const

    引自:http://www.cnblogs.com/ryuasuka/p/3342282.html?utm_source=tuicool&utm_medium=referral 现在正在学&l ...

  2. Oracle存储过程由例子到理论

    1.基础环境 oracle HR环境添加新表 CREATE TABLE "HR"."cus_test" ( "id" BYTE) NOT N ...

  3. BZOJ 3158: 千钧一发

    3158: 千钧一发 Time Limit: 10 Sec  Memory Limit: 512 MBSubmit: 1201  Solved: 446[Submit][Status][Discuss ...

  4. FlowLayoutPanel

    动态生成控件  按顺序规律排列时 用panel的话 要指定特定的位置 .麻烦. 可以通过用flowLayoutPanel来解决. FlowLayoutPanel:表格布局面板,适合以表格形式规则的动态 ...

  5. spring mvc(前置控制器)(转载)

    (此文转载:http://www.cnblogs.com/brolanda/p/4265749.html) 一.前置控制器配置与讲解 上篇中理解了IOC容器的初始化时机,并理解了webApplicat ...

  6. Angularjs兼容IE

    http://www.tuicool.com/articles/EJv6riY http://www.angularjs.cn/A00v http://www.cnblogs.com/ahl5esof ...

  7. python包使用指南-创建虚拟环境

    创建虚拟环境的两种方法: 1.virtualenv 2.venv http://packaging.python.org/en/latest/installing/#creating-virtual- ...

  8. Spring Boot中的事务管理

    原文  http://blog.didispace.com/springboottransactional/ 什么是事务? 我们在开发企业应用时,对于业务人员的一个操作实际是对数据读写的多步操作的结合 ...

  9. UITextField的placeholder文字的位置,颜色等的自定义设置

    //控制placeHolder的位置,左右缩20 -(CGRect)placeholderRectForBounds:(CGRect)bounds { CGRect inset = CGRectMak ...

  10. matlab下二重积分的蒙特卡洛算法

    %%monte_carlo_ff.m %被积函数(二重) function ff=monte_carlo_ff(x,y) ff=x*y^2;%函数定义处 end %%monte_carlo.m %蒙特 ...