CoreDS.Tables["sys"].PrimaryKey = new DataColumn[] { CoreDS.Tables["sys"].Columns["id"] };

DataTable添加列和行的方法

C#  
方法一:

DataTable  tblDatas = newDataTable("Datas");
DataColumn dc = null;

//赋值给dc,是便于对每一个datacolumn的操作
dc =tblDatas.Columns.Add("ID",Type.GetType("System.Int32"));
dc.AutoIncrement= true;//自动增加
dc.AutoIncrementSeed = 1;//起始为1
dc.AutoIncrementStep = 1;//步长为1
dc.AllowDBNull = false;//

dc = tblDatas.Columns.Add("Product",Type.GetType("System.String"));
dc = tblDatas.Columns.Add("Version",Type.GetType("System.String"));
dc = tblDatas.Columns.Add("Description",Type.GetType("System.String"));

DataRow newRow;
newRow = tblDatas.NewRow();
newRow["Product"] = "大话西游";
newRow["Version"] = "2.0";
newRow["Description"] = "我很喜欢";
tblDatas.Rows.Add(newRow);

newRow = tblDatas.NewRow();
newRow["Product"] = "梦幻西游";
newRow["Version"] = "3.0";
newRow["Description"] = "比大话更幼稚";
tblDatas.Rows.Add(newRow);

方法二:

DataTable tblDatas = newDataTable("Datas");
tblDatas.Columns.Add("ID", Type.GetType("System.Int32"));
tblDatas.Columns[0].AutoIncrement = true;
tblDatas.Columns[0].AutoIncrementSeed = 1;
tblDatas.Columns[0].AutoIncrementStep = 1;

tblDatas.Columns.Add("Product",Type.GetType("System.String"));
tblDatas.Columns.Add("Version",Type.GetType("System.String"));
tblDatas.Columns.Add("Description",Type.GetType("System.String"));

tblDatas.Rows.Add(newobject[]{null,"a","b","c"});
tblDatas.Rows.Add(newobject[] { null, "a", "b", "c" });
tblDatas.Rows.Add(new object[] { null, "a", "b", "c" });
tblDatas.Rows.Add(new object[] { null, "a", "b", "c" });
tblDatas.Rows.Add(new object[] { null, "a", "b", "c" });

方法三:
DataTable table = new DataTable ();

//创建table的第一列
DataColumn priceColumn = new DataColumn();
//该列的数据类型
priceColumn.DataType = System.Type.GetType("System.Decimal");
//该列得名称
 priceColumn.ColumnName = "price";
 //该列得默认值
priceColumn.DefaultValue =50;

// 创建table的第二列
DataColumn taxColumn = new DataColumn();
taxColumn.DataType = System.Type.GetType("System.Decimal");
 //列名
taxColumn.ColumnName = "tax";
//设置该列得表达式,用于计算列中的值或创建聚合列
taxColumn.expression_r_r = "price *0.0862";
// Create third column.
DataColumn totalColumn = new DataColumn();
totalColumn.DataType = System.Type.GetType("System.Decimal");
totalColumn.ColumnName = "total";
//该列的表达式,值是得到的是第一列和第二列值得和
totalColumn.expression_r_r = "price + tax";

// 将所有的列添加到table上
table.Columns.Add(priceColumn);
table.Columns.Add(taxColumn);
table.Columns.Add(totalColumn);

//创建一行
 DataRow row = table.NewRow();
 //将此行添加到table中
table.Rows.Add(row);

//将table放在试图中
 DataViewview = new DataView(table);
dg.DataSource = view;

dg.DataBind();

转载于:https://www.cnblogs.com/wangchuang/archive/2013/05/22/3093092.html

动态创建DataTable[转]相关推荐

  1. FineUIMvc随笔(1)动态创建表格列

    声明:FineUIMvc(基础版)是免费软件,本系列文章适用于基础版. <FineUIMvc随笔>目录 FineUIMvc随笔(1)动态创建表格列 FineUIMvc随笔(2)怎样在控件中 ...

  2. C#--动态操作DataTable

    C#动态操作DataTable(新增行.列.查询行.列等) 方法一:动态创建一个DataTable ,并为其添加数据 public void CreateTable()         {       ...

  3. [原创]FineUI秘密花园(二十一) — 表格之动态创建列

    有时我们需要根据数据来动态创建表格列,怎么来做到这一点呢?本章会详细讲解. 动态创建的列 还是通过一个示例来看下如何在FineUI中动态创建表格列,示例的界面截图: 先来看下ASPX的标签定义: 1: ...

  4. ASP.NET DEMO 18: 如何编程动态创建 Menu

    ASP.NET DEMO 15: 如何编程动态创建 TreeView 的姊妹篇: <%@ Page Language="C#" %> <%@ Import Nam ...

  5. layui 使用laydate动态创建多个时间选择框

    记录:layui框架, js使用 laydate动态创建多个时间选择框,点击无效问题.此外,使用laydate时间选择框生效的关键一点是,laydate框架会给input输入框增加一个lay-key= ...

  6. python创建类的实例方法-Python中动态创建类实例的方法

    简介 在Java中我们可以通过反射来根据类名创建类实例,那么在Python我们怎么实现类似功能呢? 其实在Python有一个builtin函数import,我们可以使用这个函数来在运行时动态加载一些模 ...

  7. Javascript:DOM动态创建元素实例应用

    <!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8" ...

  8. 新建异常并处理java_java – 动态创建异常的工厂模式

    我创建了Exception xml并动态创建并抛出异常. com.package.CheckedException Checked Exception Message com.package.UnCh ...

  9. SpringBoot集成Quartz实现定时任务的动态创建、启动、暂停、恢复、删除。

    点击上方蓝色"方志朋",选择"设为星标" 回复"666"获取独家整理的学习资料! 作者:毅大师 blog.csdn.net/qq_39648 ...

最新文章

  1. jmeter操作数据库
  2. Java旅游项目线路收藏_基于JavaWeb的旅游项目--详情功能
  3. 收集100 个网络基础知识
  4. 一、css清除浮动方法学习笔记总结(超详细,简单易懂)
  5. python etree pandas_python爬虫Xpath,pandas示例
  6. Windows Server 2008 R2忘记管理员密码后的解决方法
  7. protues仿真之数码管消影问题
  8. 联想服务器风扇智能调节,联想怎么调风扇转速
  9. 串口隔离内外网的通信协议设计
  10. 解析MATLAB短时傅里叶变换函数spectrogram()
  11. OSChina 周一乱弹 —— 带你装逼带你飞~
  12. 纯音乐 -《抒情中国系列-烟雨江南》
  13. 小型的代码管理仓库Gitea安装指南
  14. 《Kotin 极简教程》第14章 使用 Kotlin DSL
  15. 统计打印字符串arg中每个字符出现的次数
  16. PDF.js 实现pdf分页加载的前端优化(实现按需加载)-前端的demo也已经上传
  17. 减轻梯度消失方法整理
  18. python HTMLParser
  19. 失联8分钟后现神秘“第7次握手” 澳两次发现疑似黑匣子信号 搜救区域最深5000米
  20. 女生为什么背对着男生睡觉

热门文章

  1. 网络编程学习笔记(recvfrom和sendto函数)
  2. 【剑指offer】题目二
  3. 条件、循环、函数定义 练习(2017.9.12)
  4. QueryList的使用
  5. springMVC get请求及其请求地址写法
  6. java二维码生成与解析代码实现
  7. asp.net url 重写解决方案
  8. 用扫描的方式实现Rosenfeld and Pfaltz提出的距离变换!
  9. 大学生学习c语言方法,针对在校大学生的C语言入门学习——函数
  10. leetcode算法题--把数组排成最小的数