类别:程序开发

日期:2022-04-06 浏览:1872 评论:0

是一个临时保存数据的网格虚拟表(表示内存中数据的一个表。)。DataTable是ADO dot net 库中的核心对象。它可以被应用在 VB 和 ASP 上。它无须代码就可以简单的绑定数据库。它具有微软风格的用户界面。
其他使用DataTable的对象包括DataSet和DataView。

创建一个DataTable,并为之添加数据(自定义DataTable)

   DataTable dt=new DataTable("cart");
   DataColumn dc1=new DataColumn("prizename",Type.GetType("System.String"));
   DataColumn dc2=new DataColumn("point",Type.GetType("System.Int16"));
   DataColumn dc3=new DataColumn("number",Type.GetType("System.Int16"));
   DataColumn dc4=new DataColumn("totalpoint",Type.GetType("System.Int64"));
   DataColumn dc5=new DataColumn("prizeid",Type.GetType("System.String"));
   dt.Columns.Add(dc1);
   dt.Columns.Add(dc2);
   dt.Columns.Add(dc3);
   dt.Columns.Add(dc4);
   dt.Columns.Add(dc5);

//以上代码完成了DataTable的构架,但是里面是没有任何数据的

 for(int i=0;i<10;i++)
   {
    DataRow dr=dt.NewRow();
    dr["prizename"]="娃娃";
    dr["point"]=10;
    dr["number"]=1;
    dr["totalpoint"]=10;
    dr["prizeid"]="001";
    dt.Rows.Add(dr);
   }

//填充了10条相同的记录进去

有人会这么做

DataRow dr=new DataRow();
  ..
dt.Rows.Add(dr);

这样是不行的,因为一个DataRow必定是属于一个DataTable的,不能凭空建立,就好比一条记录一定是属于一个表一样

又有人这么做

  DataRow dr=dt.NewRow();
    dr["prizename"]="娃娃";
    dr["point"]=10;
    dr["number"]=1;
    dr["totalpoint"]=10;
    dr["prizeid"]="001";
   for(int i=0;i<10;i++)
   {
         dt.Rows.Add(dr);
   }

这样做同样是错误的,因为DataTable已经有这条DataRow了,就好比一个表中不可能存在2条一样的记录,必须每次NewRow()

    //生成一个DataTable并赋给ViewState
    private DataTable CreateDataTable() 
    {
            DataTable table = new DataTable();
            DataColumn colum;
            colum = new DataColumn();
            colum.DataType = System.Type.GetType("System.Int32");
            colum.ColumnName = "ProductType";
            table.Columns.Add(colum);
            colum = new DataColumn();
            colum.DataType = System.Type.GetType("System.Int32");
            colum.ColumnName = "ProductSpecID";
            table.Columns.Add(colum);
            colum = new DataColumn();
            colum.DataType = System.Type.GetType("System.String");
            colum.ColumnName = "ProductCode";
            table.Columns.Add(colum);
            ViewState["detailtable"] = table; //存放table
            return table;
    }

使用时就直接:

DataTable table = ViewState["detailtable"] as DataTable;


本文标题:创建一个DataTable,并为之添加数据(自定义DataTable)创建一个DataTable,并为之添加数据(自定义DataTable)
本文链接:https://vtzw.com/post/948.html
作者授权:除特别说明外,本文由 零一 原创编译并授权 零一的世界 刊载发布。
版权声明:本文不使用任何协议授权,您可以任何形式自由转载或使用。
 您阅读本篇文章共花了: 

 可能感兴趣的文章

评论区

发表评论 / 取消回复

必填

选填

选填

◎欢迎讨论,请在这里发表您的看法及观点。