在开发中,我们常用到表类型数据,不同于string,int。。。。那么datatable类型如何定义呢,具体怎么使用呢,代码如下:

namespace Common.Table
{
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.Runtime.Serialization; [System.ComponentModel.DesignerCategory("Code")]
[SerializableAttribute]
public class dataTableName : DataTable
{
public const string dataTableName_TABLENAME = "dataTableName ";
public const string FILE_ID_FIELD = "FILE_ID";
public const string APPLYER_FIELD = "APPLYER";
public const string YEARMONEY_FIELD = "YEARMONEY";
public const string COMPANY_NAME_FIELD = "COMPANY_NAME"; public dataTableName ()
{
BuildDataTables();
} public dataTableName (SerializationInfo info, StreamingContext context) : base(info, context) { }
private void BuildDataTables()
{
this.TableName = dataTableName_TABLENAME ;
this.Columns.Add(FILE_ID_FIELD, typeof(System.String));
this.Columns.Add(APPLYER_FIELD, typeof(System.String));
this.Columns.Add(YEARMONEY_FIELD, typeof(System.Double));
this.Columns.Add(COMPANY_NAME_FIELD, typeof(System.String));
}
}
}

表数据类型已经定义完成,通常表类型中列的名字和列的个数都是和表名都是和数据库中的表是一致的,这样方便数据库的操作

废话不多说,具体使用方法如下:

  public dataTableName table1 //申明一个表类型数据的属性,方便下面使用
{
get
{
return ((ViewState["table1"] == null) ? null : (dataTableName )ViewState["table1"]);
}
set
{
ViewState["table1"] = value;
}
} protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
table1 = new dataTableName ();//页面加载时要实例化,不然会报‘未将对象引用到实例’的错误
}
}
protected void lbtnSave_Click(object sender, EventArgs e)
{      DataRow row = null;
    row = dataTableName.NewRow();
table1 .Rows.Add(row);
     row[dataTableName .FILE_ID_FIELD] = values1;
row[dataTableName .APPLYER_FIELD] = values2;
    
    table1 .AcceptChanges();
     datatable.DefaultView.Sort = "columnName desc";//排序
} 调用时的代码:
System mySystem = new System();
myData = mySystem.mothed(myFamilyInfoTable);

接收参数:

public calss System
{
   public DataSet mothed( dataTableName table2);
}

ok,

 

C#中datatable的用法/传数据的更多相关文章

  1. SELECT INTO和INSERT INTO SELECT的区别 类似aaa?a=1&b=2&c=3&d=4,如何将问号以后的数据变为键值对 C# 获取一定区间的随即数 0、1两个值除随机数以外的取值方法(0、1两个值被取值的概率相等) C# MD5 加密,解密 C#中DataTable删除多条数据

    SELECT INTO和INSERT INTO SELECT的区别   数据库中的数据复制备份 SELECT INTO: 形式: SELECT value1,value2,value3 INTO Ta ...

  2. C#中DataTable删除多条数据

    //一般情况下我们会这么删除 DataTable dt = new DataTable(); for (int i = 0; i < dt.Rows.Count; i++) { if (99 % ...

  3. 往aws中的s3上传数据

    在官网下载对应的sdk http://aws.amazon.com/cn/sdk-for-net/ 然后再aws上为s3上的bucket生成密钥对 access_key和secret_key 调用对应 ...

  4. SpringMVC中使用Json传数据

    在web项目中使用Json进行数据的传输是非常常见且有用的,在这里介绍下在SpringMVC中使用Json传数据的一种方法,在我的使用中,主要包括下面四个部分(我个人喜好使用maven这类型工具进行项 ...

  5. socket传数据并记录到文件中

    最近在新项目中要通过socket传一些数据,下面是程序: 功能: 将客户端发送的json数据写入到日志文件中,如果数据不是json的,丢弃. 程序如下: #!/usr/bin/env python # ...

  6. Android开发中Bundle用法包裹数据(转)

    Android开发中Bundle用法包裹数据 Bundle的经典用法,包裹数据放入Intent中,目的在于传输数据. SDK 里是这样描述: A mapping from String values ...

  7. Django中从本地上传excel文件并将数据存储到数据库

    Django中从本地上传excel文件并将数据存储到数据库 一.前端界面 <div class="page-container"> <form action=&q ...

  8. vue中父组件传数据给子组件

    父组件: <template> <parent> <child :list="list"></child> //在这里绑定list对 ...

  9. 【转载】C#通过Remove方法移除DataTable中的某一列数据

    在C#中的Datatable数据变量的操作过程中,有时候我们需要移除当前DataTable变量中的某一列的数据,此时我们就需要使用到DataTable变量内部的Columns属性变量的Remove方法 ...

随机推荐

  1. win10 网络连接怎么删除不再使用的连接

    # 打开网络共享中心->更改适配器设置->右击->选择属性->选择配置->选择驱动程序->卸载

  2. 在IE8下background-image不显示的解决方法

    刚写一个页面,在chrome,FF里调试完后,忽然想起ie来,放到Ie里其它还好了,但是有个背景图片显示不出来. 调试N遍后,只好上stackoverflow去找一下,果然找到了. 最初是这样写的: ...

  3. 项目中使用的spring 注解说明

    以前在项目中spring 的依赖注入使用 xml 配置,现在使用 注解(Annotation) 来实现配置. 1声明bean 1.1实例 有类: public class MyBean{ //do s ...

  4. java学习第十五天

    1:对象数组(掌握) (1)数组既可以存储基本数据类型,也可以存储引用类型.它存储引用类型的时候的数组就叫对象数组. (2)案例: 用数组存储5个学生对象,并遍历数组. 2:集合(Collection ...

  5. Linux 命令-1

    1.除了/之外,所有的字符都合法,有些字符最好不要用 2.以.开头的文件将被隐藏.和window的区别 3.大小写敏感 4.命令格式: 命令 -选项 参数   例如: ls -la /etc  ,选项 ...

  6. C#多样式EXECl导出

    sing NPOI.HPSF; using NPOI.HSSF.UserModel; using NPOI.HSSF.Util; using System; using System.Collecti ...

  7. c++ 控制台输入参数

    #include <iostream>#include <string> using namespace std; int main(int argc,char **argv) ...

  8. C# .NET中自带的委托Actoin、Func详解

    委托是.NET中强大的功能,而.NET为我们提供了2个非常实用的泛型委托,分别是Action.Func [Action] Action是.NET内部提供的一个无返回值.泛型的委托,有16重载,分别是0 ...

  9. Redis入门--(二)Redis的安装

    1.建议安装在Linux服务器上来运行测试的

  10. [C#]为什么Interface里的成员不能使用static修饰?

    首先引用MSDN里的原文 Interface members are automatically public, and they can't include any access modifiers ...